<SEC-DOCUMENT>0000950170-24-028192.txt : 20240308
<SEC-HEADER>0000950170-24-028192.hdr.sgml : 20240308
<ACCEPTANCE-DATETIME>20240307174821
ACCESSION NUMBER:		0000950170-24-028192
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		71
CONFORMED PERIOD OF REPORT:	20231231
FILED AS OF DATE:		20240308
DATE AS OF CHANGE:		20240307

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			GULF ISLAND FABRICATION INC
		CENTRAL INDEX KEY:			0001031623
		STANDARD INDUSTRIAL CLASSIFICATION:	FABRICATED STRUCTURAL METAL PRODUCTS [3440]
		ORGANIZATION NAME:           	04 Manufacturing
		IRS NUMBER:				721147390
		STATE OF INCORPORATION:			LA
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-34279
		FILM NUMBER:		24731559

	BUSINESS ADDRESS:	
		STREET 1:		2170 BUCKTHORNE PL
		STREET 2:		SUITE 420
		CITY:			THE WOODLANDS
		STATE:			TX
		ZIP:			77380
		BUSINESS PHONE:		713-714-6123

	MAIL ADDRESS:	
		STREET 1:		2170 BUCKTHORNE PL
		STREET 2:		SUITE 420
		CITY:			THE WOODLANDS
		STATE:			TX
		ZIP:			77380
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>gifi-20231231.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:nonNumeric="http://www.xbrl.org/dtr/type/non-numeric" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:gifi="http://www.gulfisland.com/20231231" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2022-02-16" xmlns:srt="http://fasb.org/srt/2023" xmlns:utr="http://www.xbrl.org/2009/utr">
 <head>
  <title>10-K</title>
  <meta http-equiv="Content-Type" content="text/html"/>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <div style="display:none;"><ix:header><ix:hidden><ix:nonNumeric id="F_ac811702-df53-4743-8f02-9aa300a65695" name="dei:EntityCentralIndexKey" contextRef="C_cae205c4-092f-40ce-becd-df88720df331">0001031623</ix:nonNumeric><ix:nonNumeric id="F_c132d2be-c7ce-4d60-9546-038af719a1f7" name="dei:AmendmentFlag" contextRef="C_cae205c4-092f-40ce-becd-df88720df331">false</ix:nonNumeric><ix:nonNumeric id="F_38f24eea-c334-42f0-ba26-4b3b0b87d461" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" contextRef="C_caf5d5fe-7f92-4d4b-9079-deba99a81eda">P2Y</ix:nonNumeric><ix:nonNumeric id="F_704db790-941b-4006-86ef-ab2c5e9a40cf" name="dei:DocumentFiscalPeriodFocus" contextRef="C_cae205c4-092f-40ce-becd-df88720df331">FY</ix:nonNumeric><ix:nonNumeric id="F_22f1176b-ea45-4508-8bd7-4cc5270af876" name="dei:EntityRegistrantName" contextRef="C_cae205c4-092f-40ce-becd-df88720df331">Gulf Island Fabrication, Inc.</ix:nonNumeric><ix:nonFraction id="F_353e6f25-5334-461f-bdfc-c9d489a4cbca" name="us-gaap:PreferredStockNoParValue" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" unitRef="U_UnitedStatesOfAmericaDollarsShare" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_49b424f4-788f-4eca-a50c-26ac4f7ab2b1" name="us-gaap:PreferredStockNoParValue" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" unitRef="U_UnitedStatesOfAmericaDollarsShare" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_9361e155-c9b3-447a-99a3-19c7cd143b31" name="us-gaap:PreferredStockValue" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_dc2c70d5-cfd2-41a8-a2dd-995d393aafad" name="us-gaap:PreferredStockValue" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_5a1d0188-f058-4104-8963-d6a758d07493" name="us-gaap:CommonStockNoParValue" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" unitRef="U_UnitedStatesOfAmericaDollarsShare" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_d235468d-d439-4ad8-b4d5-65df2b1abeab" name="us-gaap:CommonStockNoParValue" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" unitRef="U_UnitedStatesOfAmericaDollarsShare" xsi:nil="true"></ix:nonFraction><ix:nonNumeric id="F_0afe6cb2-44da-43fa-ad5a-e2651f8bd43e" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="C_532635ec-5108-4ab6-b295-9aeae7f12d63" format="ixt-sec:durwordsen">three years</ix:nonNumeric><ix:nonNumeric id="F_a8a89eb0-e986-42d3-855c-14bcaa1d2563" name="us-gaap:LesseeOperatingLeaseRenewalTerm" contextRef="C_532635ec-5108-4ab6-b295-9aeae7f12d63" format="ixt-sec:durwordsen">one year</ix:nonNumeric><ix:nonNumeric id="F_b8306089-f1e0-427d-b2eb-9198d2ff7286" name="us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" contextRef="C_47994a14-accc-418c-92d7-381b622394d5">http://fasb.org/us-gaap/2023#OtherAssetsNoncurrent</ix:nonNumeric><ix:nonNumeric id="F_1145cb82-332f-4336-832e-9a7b7c5bd883" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" contextRef="C_47994a14-accc-418c-92d7-381b622394d5">http://fasb.org/us-gaap/2023#LiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric id="F_04f8f0bf-472b-4379-b781-04b0610392b1" name="us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" contextRef="C_47994a14-accc-418c-92d7-381b622394d5">http://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrent</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="gifi-20231231.xsd"/></ix:references><ix:resources><xbrli:context id="C_69875705-892d-41b2-80ba-7e0a92c631b5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_574478c6-3424-4b10-81e0-a8e51c53a492"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_54d43905-2604-4f3d-9db0-f0afb038ed44"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_78af73f2-e512-48ad-a168-e1a08d677b0b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_47994a14-accc-418c-92d7-381b622394d5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_879241d4-8e67-4078-b6f2-e9b783ae6fd9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c1840173-ab69-485f-b424-fdd9a23ace30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_7155407d-bf96-4947-8a98-ad5509236125"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">gifi:ShareRepurchaseProgramMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-01</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a847befb-7bf5-4190-a135-70de8e21abad"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_20813156-538f-4600-a39d-fb62806f1a85"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_7300738f-49f5-4cac-9ef7-26cdeedeee9a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_6c42f479-dd72-456f-86ad-1450ace35beb"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c10c4ca9-3d46-4b21-aa90-73868cd784b0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8a4ed5c4-6d4e-45f9-8851-a0debd1b7aad"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_001c1d83-4997-49ee-94c6-6038db485db0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4f463aa3-6bb0-4982-868d-be2ebc2fed2b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7d6fc82f-38dc-4a2a-a2ba-042ac17cc7e4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:SeventyVehicleFerryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4900e066-caa9-4f68-828d-0333a646f71e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:ShortTermPremiumFinanceArrangementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_42157485-3d8c-40cf-89ba-67270f7bbea0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4842ef49-1790-4f0b-b666-da169d6f4753"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_09185d95-707c-4c74-9ff3-bc5922f3e781"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:PerformanceBasedRSUAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4515a7de-df59-4645-afda-0a8cc8127a58"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:NoteAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">gifi:PromissoryNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-06</xbrli:startDate><xbrli:endDate>2023-11-06</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4df14977-c162-4e59-95d4-a309d321817a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2ec33251-854d-4681-ad3f-7cc527f3834d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_77250883-71d3-4197-8132-505f6c3763fc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_cc1e7336-22c9-4f9e-bfaf-e935d603a08c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b6b8c9a8-1292-4c9f-a653-f5ce9ac89023"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_bbf9f0a1-e9b7-4b9d-bfb0-b1fc5cf2dc5f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_06f13167-5eed-4387-a08a-8dff424bad6e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_d9b40c1a-b5f6-4bbc-a8d3-1a6ed5b34a88"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_9e7cb61d-b813-42a4-aa1a-261cb783d9d5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gifi:HoumaFacilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_50f0b57f-c5ce-425a-b5a2-ea55f805b900"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_fe5c1386-484f-47ae-878a-5f3c0b7221e8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_d4e6b6b0-e516-4647-a511-ade3e6406508"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a175debd-0104-4012-a2ab-07601609eb1d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_6a3b135b-7cee-4004-85ca-f908d2888183"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7c78c8ad-38fa-4102-ac48-f7653ccce9fe"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c4e567e9-72ad-4ae8-b652-4a1f9694428a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-05-05</xbrli:startDate><xbrli:endDate>2023-05-05</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_3fc4f133-468c-4e2a-828c-774b0945c0ca"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:FortyVehicleFerryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ba57f9dd-ca27-4248-8727-bc9983095efa"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9e62d206-06dd-42d5-a27d-c90cc90990df"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_06f78687-0def-405a-baa0-8a975b546234"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_794803ce-d97e-4446-ba7a-1a2fd69d3f78"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_23da1c7a-3b6b-4c6c-866f-72f37f68421d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">gifi:ShareRepurchaseProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-12-01</xbrli:startDate><xbrli:endDate>2023-12-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0544c597-1d08-4a4e-8030-ada920dc1c4a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerCMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_7f0465c4-4ee4-4598-8765-2eff635d681a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-06</xbrli:startDate><xbrli:endDate>2023-11-06</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_bc4a4886-4017-4268-826f-76e476050225"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b19e0574-d5db-429e-b9ea-18e4968c8435"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_92e058ee-fa6b-41c3-b3d6-f9722e8f48d1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:RemainingFortyVehicleFerryMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_24b7e990-71af-44ce-907a-00c3c690b79e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:CashSettledRSUAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_1cda6b85-7fa8-4c33-aaf0-76f037ac8dbf"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a1761f83-7c5c-4336-b3f3-d87487bbf840"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_50aab56e-5238-43b1-99ef-89b0d0552b93"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_cae205c4-092f-40ce-becd-df88720df331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_af1abd01-f093-411d-bbb8-3fedcc55112c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-05-05</xbrli:startDate><xbrli:endDate>2023-05-05</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ebbc6533-3f2b-4249-918e-203985dcd36e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:ShortTermPremiumFinanceArrangementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_72022df9-790b-49f8-8bfc-00431481897d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_c3a7e33f-3b2a-4e62-89ec-6b329f36ce78"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8b8ad109-c04c-4dbc-a968-90a5cd94c64c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:GeneralLiabilityArrangementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c53b35c5-eb37-49cf-acb6-48c5c967a1d0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_65b19e72-420e-4aa7-9f18-0838a5d57560"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_398fb557-9f10-42cc-b522-240ff7e51ae1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0c59df09-712a-47cb-b2d9-678570fe3989"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ad31e239-36eb-4de9-adcd-d309cddc02e3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_445e78ae-06d3-41df-9768-d7b992aac97f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_f245e131-80fc-4498-83e5-e1095706280b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ab576475-9920-402d-a6d4-86599a046a47"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_5dc5f49a-6d78-4f27-b6fd-cba90db18506"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2157cccd-4322-435c-9ffb-a392a6e522c4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_10d79ba6-7b9d-404f-abff-543af2292ae2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_3a6ac62e-2ec1-4406-8670-91db6c3cb623"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0269de45-8980-4198-802f-0b5468843a36"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:PerformanceBasedRSUAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_18924d07-f6c4-4e2b-915b-55f0f0b7d733"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ce912fd4-11a3-42fe-b755-4418d8982304"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7b93b9fb-422c-4053-abd2-26d9ab39ec05"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_e86617dd-af33-41aa-8ea0-65f21a936e38"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b5722d4b-25c9-4479-aa56-31845020b7af"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:RemainingFortyVehicleFerryMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2be31468-ff16-44f6-86af-8e8e108a34ad"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_675fc0ac-03b3-4668-8cf2-7bb640ea0347"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9d017577-455b-4de6-8fba-e0c38d593225"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ebf1736a-1170-492a-8214-ef457875bc5a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_28f7d076-30a1-4561-9acd-820691c07dc5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_be09cd52-4568-408b-bdb6-ba23ade96279"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_cd145452-ba68-4832-bbab-f2d69bbb37bc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4a1745f1-d403-4e9b-927c-aec8bfb30e5a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_20faa71f-e80d-4bd6-a545-8479d7c110df"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_91e23f16-98d0-4e7b-8b3b-2b15f08dcf1d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_fba779cf-1af7-4885-a668-5672093d65b3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_640ef6aa-b5f2-4dad-958e-d37660c7f86a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_10d68f7a-a90d-431b-9e2a-da2598783742"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:NoteAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4c201577-ca6e-4ad5-8fa3-8980f68f6ea6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_5c874480-56e2-4952-8695-f5343665429c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9139f63d-9057-42c4-9b2f-a427e8f6dc0a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_96cb0217-26bb-4cf9-8b4e-f4235c892161"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_caf5d5fe-7f92-4d4b-9079-deba99a81eda"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:TimeBasedRSUAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_fbe3999c-ec84-4b20-b7a8-cddd6373ae5d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0583a672-521e-4eaf-a2a7-daf9543e70fa"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_410c80b6-ccc1-4936-8966-f3e944d59b81"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_fadbd496-c1ef-4862-b033-2b9e2de8ef5e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_45b1c6ba-852a-4bff-8537-06a247417f70"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_699b86a3-de20-4d0d-9749-221991b9bfb8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_49706537-7311-47c1-92fc-133ec168026b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a65e9edb-0747-45b3-8cb2-47af918e5b15"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:FortyVehicleFerryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_6d90cd7b-8dee-4f6c-aeb5-be005a60fa04"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_33a77f56-24fd-401e-9f31-0464c3cd37bc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_45441188-7fd4-40fd-889e-58292a77a98a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherOperatingIncomeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_cbc768a4-e0c3-4cec-a01c-05e92d38b313"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2a187e57-f37c-42cb-b040-9f912d512141"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_381fcc55-57f3-4b03-b7a7-9eb8efea19d7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c216a8b8-8f77-405a-8676-71144cba1804"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherOperatingIncomeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_e3032ac6-3a56-44cc-a93b-8a3f692d0f6b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SuretyBondMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-03-19</xbrli:startDate><xbrli:endDate>2018-03-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_934b968b-5d1d-469e-a030-b99ef2258abd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_68bfab3d-d457-4e66-807d-c03156337973"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_a0e7c22d-1634-4f42-8ab2-cdbce86f2df7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9ebe2456-cc9f-43ae-bd16-513522a50e1e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:LitigationCaseAxis">gifi:MpsvLitigationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_1d622621-1bd2-4b9d-9484-fbd8d9ee8de1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_a8ebeb7a-bb96-46e4-a1d7-165aa5761dc2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_3adcfaea-44fb-4459-a024-78c164bc3a40"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b89d6df1-af26-4610-822c-ce4801eb8046"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_02f5f5e9-6d82-43b0-b083-9f5ec23011dd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_87a8f7e1-0291-4b40-a041-0eb5b58b8aa9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0d8b698d-79c5-46e8-8ad9-490b93e810fc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_01ac159e-3c97-46af-b432-8dbdc656cd94"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gifi:HoumaFacilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-02-01</xbrli:startDate><xbrli:endDate>2024-02-29</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_fa386629-c7ec-4389-b0e0-17941db057e4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:CashSettledRSUAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2b1a1662-ff8a-4726-9d7d-8990daae98d8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_39b2f55f-413b-4bd7-a70a-93bfd3cdc4de"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_15ad06f3-cc87-490d-a652-cbef34e96aef"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_8cb46c35-a6a9-452c-8adf-30d5a5f42f40"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8caa51a3-a9e6-46a9-b8a6-7e8b2d1e0f9b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0cb87387-c0b6-4e37-9819-9b55ee7f470c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_de08cc50-172f-4488-a7cb-8e8aa181d563"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerAMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_f12de176-6bb7-44c6-a364-76db7bf9d4c3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2018-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7017de45-5833-4aed-b28c-0955d461c35e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8ef6ff0d-f798-451f-a56a-21690e3539d0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_8ca68023-b032-418a-be42-f11f835f0de2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:PerformanceBasedRSUAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_a4fb150a-2806-4d20-a9b8-e30b9e66a2df"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gifi:OtherIncomeExpenseNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_42223cfa-5545-4029-95db-8b9c0d2f26b0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4591485a-8e55-4cd0-8d54-1ae706046e0f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_266672af-617b-4fb8-b279-4e187afadc2d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_246f21ef-4b55-43a8-8366-c3934a370a15"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_9b386988-e37c-43b3-a8ff-0a6cee812527"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gifi:BalanceSheetDateClassifiedAsCurrentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_d862d658-577e-494e-8df1-aaaf02861fd5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_7093543c-c276-4e9c-89e1-84bdbfc16b9d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ca3865b9-b250-441a-9831-67ce11a94901"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_05b19536-9bbd-4687-9739-a0cd2fc8009f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_833f9103-3927-46fc-a722-fc251a02e77f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_6e556d01-c547-458a-a98e-9b83be20cbf8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_6f9a329b-4226-4d40-989b-b48f609f1c3f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_76c0035d-6bbe-4dca-ad23-c0e017c4af95"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_2935e2a4-dafe-4535-93c8-3946a64d44ec"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4714cb78-99d0-481d-9df4-1009ce2cfc6c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_1bf7fc59-2a44-4d64-8947-7abe38b1173b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">gifi:ShareRepurchaseProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b86efaab-ab97-4ab9-9b25-9a1aa5b52a98"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4a193f8f-cc17-4e7e-87d5-3d5a87a85499"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c7a6b99c-ab2a-4615-a17e-cbca4f0eabab"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4a9335f0-add2-49d0-8e37-7a2c1d77be3f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_74d4f2b2-4a54-47f5-9e9f-ed053b426e3b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gifi:OtherIncomeExpenseNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_dd42000e-614a-4544-9fb0-3702fb259f77"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-01</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a9c3a5c7-b40e-4bc7-8b0c-5ea9f856437f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:InsuranceFinanceAndGeneralLiabilityArrangementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_774fe221-71b2-438a-8da2-b46cda39d663"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_e05504c2-0ed9-4fe1-9d89-16d723ffed13"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:InsuranceFinanceAndGeneralLiabilityArrangementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a3970fc1-85e8-40bd-8408-517bae191be3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c1ff8c32-ee9b-4094-a536-3b612f449a7f"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c430aba2-bce6-4893-b10b-7d09271ece32"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_9b792a7c-8c0c-4ee0-a691-f444b31ac32c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerCMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_585ab07a-4a7e-4414-848f-d778e266a6e2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_da17b24e-8d51-45f0-a249-36d148fe59c1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_9fd17654-bce1-4d02-9a97-4efc13f49f07"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:SeventyVehicleFerryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0cfadcca-d5b0-49a0-adae-50a0fa885be4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerDMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_532635ec-5108-4ab6-b295-9aeae7f12d63"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ebfe2964-144b-4a54-910b-ad1585bd7601"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_018dd156-4163-4547-bf83-69ef53d758df"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_dcfb10ab-a2a0-4052-b499-ab340825ac79"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_edc61289-8f24-4a94-b7bc-9f0f39c7452c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:GeneralLiabilityArrangementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_340658b7-c5f6-4f9e-baf8-ee3628199f1b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_6303eb31-5b83-4da7-b2c0-7ec761e5f7e3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0a349ea0-6c23-43e7-938c-d5d667e097f6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_ecfa9e75-7ee7-4840-92fb-cc49075d1648"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_c6c931a9-8fbd-48f6-8d9c-9791cf80d297"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_03079662-2439-4b58-8a31-640aaece2927"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:NoteAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">gifi:PromissoryNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-11-06</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_6d4a3762-a252-4d79-b2bf-af325c98237c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_d342c752-187b-4186-b7e8-0cdc98699744"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:TimeBasedRSUAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_4eeb4eff-4542-494a-b131-7ceacf00ca5c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_68bd35ae-d7f6-4fc0-bf4e-4ea5fc4c6743"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_49d991ee-97c7-40ff-9bc7-8fb7d4273387"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gifi:BalanceSheetDateClassifiedAsNoncurrentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_f9105be5-208f-4b6e-90ee-08d64d638168"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_6d4194db-103e-4db0-8ec6-a3bd25c4c447"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_5d0f48ca-6ac2-4612-9d99-f090eec951de"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_6d7d296e-8308-421e-b161-9b8751b36e38"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">gifi:ShareRepurchaseProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_33ad9a6b-8e6e-4703-a364-62f40aaf9470"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7adcd642-c74c-48ef-ac50-7b6601a8cfc3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_95eb78d7-d965-42b9-a3b5-ffafe58b4ab6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ce6032be-9c89-4fa7-a4d6-516a38833742"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_e63efff0-f5d7-48b3-acc7-c3aa44976a25"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerAMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_314657af-8da0-44b1-a2fe-d29bf7c32141"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_c8639d00-e088-4473-8175-a7f6d3c3e0c6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_fa83d1c1-fd21-47b5-a1f9-3650ae12e262"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:NoteAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_20550a25-ca2c-414f-b8e6-5118763cd137"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-02-29</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_12854efa-a02d-4d65-b817-b5e45dc6252b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-05-05</xbrli:startDate><xbrli:endDate>2023-05-05</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_b7a3279c-fdc6-4bb6-b63e-a8ed8e06e4e7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:LitigationCaseAxis">gifi:MpsvLitigationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ebe93e40-798e-4e52-a220-9e5adb2036a6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FerryProjectsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_5603366b-aec4-44b8-94c7-5351a28ea112"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4e668483-9363-48fa-b143-7dd0b392d882"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7c189e04-103c-4e94-8dd4-b12fb43dc0b7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001031623</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerBMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="U_pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="U_shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="U_Vechicle"><xbrli:measure>gifi:Vechicle</xbrli:measure></xbrli:unit><xbrli:unit id="U_Vessel"><xbrli:measure>gifi:Vessel</xbrli:measure></xbrli:unit><xbrli:unit id="U_Segment"><xbrli:measure>gifi:Segment</xbrli:measure></xbrli:unit><xbrli:unit id="U_USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="U_UnitedStatesOfAmericaDollarsShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_c4a01197-3199-4646-9caa-71eb04f9ecc2" fromRefs="F_bbcb29e5-94dc-47ce-a791-0c5a85df09fc F_800049b5-e41c-4fe2-8cbd-99e1d37df20f F_30ae313a-b545-4a08-b624-dc0dfd7d2e58 F_1a3ae99b-6348-471b-8e5d-9a8993836a40"></ix:relationship><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_e8374915-ba70-493e-91c8-eb97ee832099" fromRefs="F_939cf3a2-6c65-413e-8a78-797b4020c621 F_6c557e22-e38b-4cbb-ad0b-2c4c7ad33835"></ix:relationship><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_18168d38-3547-41e1-b53d-3da59ac3541d" fromRefs="F_939cf3a2-6c65-413e-8a78-797b4020c621 F_6c557e22-e38b-4cbb-ad0b-2c4c7ad33835"></ix:relationship><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_09cb6c4d-b5f1-4b7c-93a5-347cbaa6f4af" fromRefs="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"></ix:relationship><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_10e914ca-b1da-4fb2-ac97-023706bca01e" fromRefs="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"></ix:relationship><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_dc1489b8-e89d-4c52-b4b2-784e65fbc1f2" fromRefs="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"></ix:relationship><ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="FNT_32a96312-6aa1-4395-8743-6f986704f2c7" fromRefs="F_6eddde0d-af50-4973-9a3e-13f4f119a42e F_5672939d-5663-4220-a7fd-741e60520ffa F_cf0f42d6-c3c3-4cf5-91ea-56be196a9482"></ix:relationship></ix:resources></ix:header></div>
  <div style="padding-top:0.5in;min-height:0.4in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="border-top:2.25pt double;padding-top:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:16pt;font-family:Times New Roman;min-width:fit-content;">UNITED STATES</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:16pt;font-family:Times New Roman;min-width:fit-content;">SECURITIES AND EXCHANGE COMMISSION</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Washington, D.C. 20549</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:18pt;font-family:Times New Roman;min-width:fit-content;">FORM </span><span style="font-size:18pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b6de101d-4cfd-476c-8e0c-203aedef42ce" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:DocumentType"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:18pt;font-family:Times New Roman;min-width:fit-content;">10-K</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:18pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> (Mark One)</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:4%;"/>
    <td style="width:96%;"/>
   </tr>
   <tr style="height:9pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-left:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_907a723b-358d-40b2-9eac-e7227f3f2fe0" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:DocumentAnnualReport" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">&#9746;</span></ix:nonNumeric></span></p></td>
    <td style="padding-left:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:9pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For the fiscal year ended </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_90138354-cf93-4f6d-a129-17f5fed018ce" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d7646900-ef84-4f9b-b758-80962f86d875" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:CurrentFiscalYearEndDate" format="ixt:date-monthname-day-en"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_67e49d64-ccd0-407f-b12c-da36f0ee463e" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:DocumentFiscalYearFocus"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023</span></ix:nonNumeric></span></ix:nonNumeric></span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">OR</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:4%;"/>
    <td style="width:96%;"/>
   </tr>
   <tr style="height:9pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-left:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_c0b3c7ef-ffae-4037-9b67-86a9f50ae0f3" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span></p></td>
    <td style="padding-left:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:9pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934 FOR THE TRANSITION PERIOD FROM                      TO</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">                     </span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Commission File Number </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_438f388d-1df4-4f2f-8642-cbf101718446" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityFileNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">001-34279</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><img src="img20478310_0.jpg" alt="img20478310_0.jpg" style="width:265px;height:45px;"/>&#160;</p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:14pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_22f1176b-ea45-4508-8bd7-4cc5270af876;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:14pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></span></span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(Exact name of Registrant as specified in its Charter)</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:3pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:50%;"/>
    <td style="width:50%;"/>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_4ba49189-3f4a-4e69-9c7a-da6cfcf46f74" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Louisiana</span></ix:nonNumeric></span></p></td>
    <td style="vertical-align:bottom;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_6cec3fbb-bf86-4343-91e6-b447d65f4102" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityTaxIdentificationNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">72-1147390</span></ix:nonNumeric></span></p></td>
   </tr>
   <tr style="height:7pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;padding-right:0.01in;"><p style="font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(State or other jurisdiction of</span></p><p style="font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0.75pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">incorporation or organization)</span></p></td>
    <td style="vertical-align:bottom;padding-right:0.01in;"><p style="font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(I.R.S. Employer</span></p><p style="font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Identification No.)</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0.75pt;text-align:center;"><span><ix:nonNumeric id="F_bd6199ab-5ad6-464f-b8b7-f6c66d3f602e" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityAddressAddressLine1"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2170 Buckthorne Place</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">, </span><span><ix:nonNumeric id="F_3d96f9ee-ac9b-432b-992b-5e05857377d0" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityAddressAddressLine2"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Suite 420</span></ix:nonNumeric></span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0.75pt;text-align:center;"><span><ix:nonNumeric id="F_6e803953-65a9-4702-bff0-e3e54bcd57e8" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityAddressCityOrTown"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">The Woodlands</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">, </span><span><ix:nonNumeric id="F_596ef7b6-909a-4bd7-92c1-59a3d7967694" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Texas</span></ix:nonNumeric></span></p></td>
    <td style="vertical-align:bottom;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_4f3fa60a-2c12-479f-81f3-872a5bd24c80" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityAddressPostalZipCode"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">77380</span></ix:nonNumeric></span></p></td>
   </tr>
   <tr style="height:7pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;padding-right:0.01in;"><p style="font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(Address of principal executive offices)</span></p></td>
    <td style="vertical-align:bottom;padding-right:0.01in;"><p style="font-size:7pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(Zip Code)</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Registrant&#8217;s telephone number, including area code: (</span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_6786abfe-545a-41b7-9a61-139c3c5ccfd2" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:CityAreaCode"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">713</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">) </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_dc66ae70-085a-4a95-aabc-5a1fe838f0e1" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:LocalPhoneNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">714-6100</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="margin-left:40%;padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:1pt solid;margin-right:40%;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:1pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Securities registered pursuant to Section 12(b) of the Act:</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:38%;"/>
    <td style="width:1%;"/>
    <td style="width:15%;"/>
    <td style="width:1%;"/>
    <td style="width:45%;"/>
   </tr>
   <tr style="height:8pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;border-bottom:0.5pt solid;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Title of each class</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Trading</span></p><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Symbol(s)</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Name of each exchange on which registered</span></p></td>
   </tr>
   <tr style="height:8pt;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:8.5pt;"><ix:nonNumeric id="F_14b497a7-3b0c-4228-a253-b919c580b553" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:Security12bTitle"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Common Stock</span></ix:nonNumeric></span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:8.5pt;"><ix:nonNumeric id="F_e2129929-a1c1-45b3-b9e0-dab8528311c4" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:TradingSymbol"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">GIFI</span></ix:nonNumeric></span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:8.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:8.5pt;"><ix:nonNumeric id="F_05334fe7-5e0f-4bf3-be98-84de0bfef37a" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:SecurityExchangeName"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">NASDAQ</span></ix:nonNumeric></span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Securities registered pursuant to Section 12(g) of the Act: None</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark if the Registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Yes </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="font-size:8pt;font-family:Times New Roman;"><ix:nonNumeric id="F_92efd62c-8ec0-4b21-82a8-7ecf328778ba" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityWellKnownSeasonedIssuer"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">No</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9746;</span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark if the Registrant is not required to file reports pursuant to Section 13 or 15(d) of the Act.  Yes </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="font-size:8pt;font-family:Times New Roman;"><ix:nonNumeric id="F_27cfb0f1-8f3c-4a5e-9278-1eeb73d946f9" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityVoluntaryFilers"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">No</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9746;</span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark whether the Registrant: (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the Registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.  </span><span style="font-size:8pt;font-family:Times New Roman;"><ix:nonNumeric id="F_50316ce8-1377-4d7e-9888-5225ab598f42" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityCurrentReportingStatus"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Yes</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9746;</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> No </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9744;</span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark whether the Registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the Registrant was required to submit such files).  </span><span style="font-size:8pt;font-family:Times New Roman;"><ix:nonNumeric id="F_6faed703-c60e-4754-abf8-52a047931037" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityInteractiveDataCurrent"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Yes</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9746;</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> No </span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9744;</span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:18.9%;"/>
    <td style="width:1%;"/>
    <td style="width:55.84%;"/>
    <td style="width:1.06%;"/>
    <td style="width:20.1%;"/>
    <td style="width:1%;"/>
    <td style="width:2.1%;"/>
   </tr>
   <tr style="height:10.8pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Large accelerated filer</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9744;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">  </span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accelerated filer</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9744;</span></p></td>
   </tr>
   <tr style="height:2.15pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;"><ix:nonNumeric id="F_265bc932-018b-4597-99ee-113daed0ce99" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Non-accelerated filer</span></ix:nonNumeric></span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-family:'Segoe UI Symbol',sans-serif;min-width:fit-content;">&#9746;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">  </span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Smaller reporting company</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_33597b5c-0f0d-4e80-a572-a0c5190e08d8" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#9746;</span></ix:nonNumeric></span></p></td>
   </tr>
   <tr style="height:2.15pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:8pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Emerging growth company</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:8pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_c1b37a5e-bcd1-458f-a88f-83f777611f12" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.  &#9744;</span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit <br/>report.  </span><span><ix:nonNumeric id="F_1eaf7ac7-0a4d-4d9a-88cb-10929680f170" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:IcfrAuditorAttestationFlag" continuedAt="F_1eaf7ac7-0a4d-4d9a-88cb-10929680f170_1" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span></p>
  <div style="font-size:8pt;font-family:Times New Roman;"><ix:continuation id="F_1eaf7ac7-0a4d-4d9a-88cb-10929680f170_1"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements. </span><span style="font-size:8pt;font-family:Times New Roman;"><ix:nonNumeric id="F_71b4039b-1625-4993-a9b2-517f97166c14" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:DocumentFinStmtErrorCorrectionFlag" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span></p><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant&#8217;s executive officers during the relevant recovery period pursuant to &#167;240.10D-1(b).  &#9744;</span></p></ix:continuation></div>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Indicate by check mark whether the Registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).  Yes </span><span style="font-size:8pt;font-family:Times New Roman;"><ix:nonNumeric id="F_efa30aa1-3cc8-4f07-af6b-d565d689a88a" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:EntityShellCompany" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> No &#9746;</span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">The aggregate market value of the voting and non-voting common equity held by non-affiliates of the Registrant, based on the closing price of the shares of common stock on The NASDAQ Stock Market on June 30, 2023 was</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_be422daa-2c5f-46ea-a8a8-3a1a05d6c04a" contextRef="C_8a4ed5c4-6d4e-45f9-8851-a0debd1b7aad" name="dei:EntityPublicFloat" unitRef="U_USD" decimals="0" format="ixt:num-dot-decimal">37,696,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">.</span></p>
  <p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">The number of shares of Registrant&#8217;s Common Stock outstanding as of February 29, 2024, was </span><span style="font-size:8pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a5638caa-95ab-41ee-ade9-fe6b4d5fa80a" contextRef="C_20550a25-ca2c-414f-b8e6-5118763cd137" name="dei:EntityCommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">16,197,031</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">.</span></p>
  <div style="font-size:8pt;font-family:Times New Roman;"><ix:nonNumeric id="F_0ebb27fd-ef46-42f8-a0e3-98f0888c405a" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:DocumentsIncorporatedByReferenceTextBlock" escape="true"><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:4pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">DOCUMENTS INCORPORATED BY REFERENCE</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Portions of the registrant&#8217;s definitive proxy statement to be prepared for use in connection with the registrant&#8217;s 2024 annual meeting of shareholders have been incorporated by reference into Part III of this Annual Report on Form 10-K.</span></p></ix:nonNumeric></div>
  <p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:2.25pt double;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;min-height:0.4in;justify-content:flex-end;"></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ANNUAL REPORT ON FORM 10-K FOR</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">THE FISCAL YEAR ENDED DECEMBER 31, 2023</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">TABLE OF CONTENTS</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:93.38%;"/>
    <td style="width:6.62%;"/>
   </tr>
   <tr style="height:8pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Page</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#glossary_terms"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Glossary of Terms</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">ii</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#part_i"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">PART I</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#items_1_2_business_properties"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Items 1 and 2. Business and Properties</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_1a_risk_factors"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 1A. Risk Factors</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_1b_unresolved_staff_comments"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 1B. Unresolved Staff Comments</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_1c_cybersecurity"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 1C. Cybersecurity</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_3_legal_proceedings"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 3. Legal Proceedings</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_4_mine_safety_disclosures"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 4. Mine Safety Disclosures</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#part_ii"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">PART II</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">24</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_5_market_for_registrants_common_equ"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 5. Market for Registrant's Common Equity, Related Shareholder Matters and Issuer Purchases of Equity Securities</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">24</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_6"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 6. Reserved</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">24</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_7_managements_discussion_analysis_f"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 7. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">25</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_7a"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 7A. Quantitative and Qualitative Disclosures About Market Risk</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">42</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_8_financial_statements_supplementar"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 8. Financial Statements and Supplementary Data</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">42</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_9_changes_in_disagreements_with_acc"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 9. Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">42</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_9a_controls_procedures"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 9A. Controls and Procedures</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">42</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_9b_or_information"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 9B. Other Information</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_9c"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 9C. Disclosure Regarding Foreign Jurisdiction That Prevent Inspections</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#part_iii"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">PART III</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_10_directors_executive_ficers_corpo"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 10. Directors, Executive Officers and Corporate Governance</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_11_executive_compensation"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 11. Executive Compensation</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_12_security_ownership_certain_benef"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 12. Security Ownership of Certain Beneficial Owners and Management and Related Shareholder Matters</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_13_certain_relationships_related_tr"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 13. Certain Relationships and Related Transactions, and Director Independence</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_14_principal_accounting_fees_servic"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 14. Principal Accounting Fees and Services</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">43</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#part_iv"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">PART IV</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_15_exhibits_financial_statement_sch"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 15. Exhibits, Financial Statement Schedules</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:21pt;vertical-align:bottom;"><p style="margin-left:21pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_16_form_10k_summary"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Item 16. Form 10-K Summary</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#report_of_independent_auditor"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">FINANCIAL STATEMENTS</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#exhibit_index"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">EXHIBIT INDEX</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">E-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#signatures"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">SIGNATURES</span></a></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">S-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">i</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="glossary_terms"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GLOSSARY</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> OF TERMS</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As used in this report filed on form 10-K for the year ended December 31, 2023 (&#8220;2023 Annual Report&#8221; or &#8220;this Report&#8221;), the following abbreviations and terms have the meanings listed below. In addition, the terms &#8220;Gulf Island,&#8221; &#8220;the Company,&#8221; &#8220;we,&#8221; &#8220;us&#8221; and &#8220;our&#8221; refer to Gulf Island Fabrication, Inc. and its consolidated subsidiaries, unless the context clearly indicates otherwise. Certain terms defined below may be redefined separately within this Report when we believe providing a definition upon the first use of the term will assist users of this Report. Unless and as otherwise stated, any references in this Report to any agreement means such agreement and all schedules, exhibits and attachments in each case as amended, restated, supplemented or otherwise modified to the date of filing this Report.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:19%;"/>
    <td style="width:1%;"/>
    <td style="width:80%;"/>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">2022 Annual Report</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our annual report for the year ended December 31, 2022, filed with the SEC on Form 10-K on March 28, 2023.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">2022 Financial Statements</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Financial Statements for the year ended December 31, 2022 and related notes, included in our 2022 Annual Report.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">ASC</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounting Standards Codification.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">ASU</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounting Standards Update.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Balance Sheet</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Consolidated Balance Sheets, as filed in this Report.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Board</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Board of Directors.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Cash-Settled RSUs</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">RSUs settled in cash.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">contract assets</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Costs and estimated earnings recognized to date in excess of cumulative billings.</span></p></td>
   </tr>
   <tr style="height:6pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">contract liabilities</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cumulative billings in excess of costs and estimated earnings recognized to date and accrued contract losses.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">cost-reimbursable</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Work is performed and billed to the customer at cost plus a profit margin or other variable fee arrangements which can include a mark-up.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">COVID-19</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">The global coronavirus pandemic.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">deck</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">The component of a platform on which drilling, production, separating, gathering, piping, compression, well support, crew quartering and other functions related to offshore oil and gas development are conducted.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">DTA(s)</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred Tax Asset(s).</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">EPC</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineering, Procurement and Construction.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">ESG</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Environmental, Social and Governance.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Exchange Act</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Securities Exchange Act of 1934, as amended.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Fabrication Division</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Fabrication reportable segment.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Facilities</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Houma Facilities and other facilities that support our operations.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">FASB</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Financial Accounting Standards Board.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">FDC</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fidelity &amp; Deposit Company of Maryland.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Ferry Projects</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contracts and related obligations for our seventy-vehicle ferry and two forty-vehicle ferry projects that were under construction as of the date of the Shipyard Transaction, which were excluded from the Shipyard Transaction.</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">  </span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Financial Statements</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Consolidated Financial Statements, including comparative consolidated Balance Sheets, Statements of Operations, Statements of Changes in Shareholders' Equity and Statements of Cash Flows, as filed in this Report.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">GAAP</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Generally Accepted Accounting Principles in the U.S.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">GIS</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gulf Island Shipyards, LLC.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">GOM</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gulf of Mexico.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Gulf Coast</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Along the coast of the Gulf of Mexico.</span></p></td>
   </tr>
  </table>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ii</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:19%;"/>
    <td style="width:1%;"/>
    <td style="width:80%;"/>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Hornbeck</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Hornbeck Offshore Services, LLC.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Houma AHFS</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Certain property sold in February 2024 that was part of our Houma Facilities, which was classified as an asset held for sale on our Balance Sheet at December 31, 2023.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Houma Facilities</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our owned facilities located in Houma, Louisiana that support our Fabrication Division and Services Division and represent our primary operating facilities.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Incentive Plans</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term incentive plans under which equity or cash-based awards may be made to eligible employees and non-employee directors.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">inland</span><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Typically, bays, lakes and marshy areas.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Insurance Finance Arrangements</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term finance arrangements for insurance premiums associated with our property and equipment and general liability insurance coverages.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">ISO</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">International Standard Organization based in Geneva, Switzerland.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">jacket</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">A component of a fixed platform consisting of a tubular steel braced structure extending from the mudline of the seabed to a point above the water surface. The jacket is anchored with tubular steel piles driven into the seabed. The jacket supports the deck structure located above the water.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">labor hours</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Hours worked by employees directly involved in the production of our products or delivery of our services.</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">LC Facility</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our $10.0 million letter of credit facility with Whitney Bank maturing on June 30, 2024, as amended.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">LNG</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Liquefied Natural Gas.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Mortgage Agreement</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Multiple indebtedness mortgage arrangement with Zurich, to secure our obligations and liabilities under our Note Agreement and general indemnity agreement with Zurich associated with an outstanding surety bond for our forty-vehicle ferry projects. The mortgage arrangement encumbers the real estate associated with our Houma Facilities and includes certain covenants and events of default.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">modules</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fabricated structures that include structural steel, piping, valves, fittings, storage vessels and other equipment that are incorporated into a refining, petrochemical, LNG or industrial system.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">MPSV(s)</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Multi-Purpose Supply Vessel(s).</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">MPSV Litigation</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">The lawsuit filed in the Twenty-Second Judicial District Court for the Parish of St. Tammany, State of Louisiana and was styled Gulf Island Shipyards, LLC v. Hornbeck Offshore Services, LLC, bearing docket number 2018-14861, which was resolved on October 4, 2023.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Note Agreement</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Promissory note entered into with Zurich on November 6, 2023, in connection with the resolution of our MPSV Litigation, pursuant to which we will pay Zurich $20.0 million, plus interest at a fixed rate of 3.0% per annum, payable in 15 equal annual installments beginning on December 31, 2024.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">NOL(s)</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net operating loss(es) that are available to offset future taxable income, subject to certain limitations.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">offshore</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">In unprotected waters outside coastlines.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">onshore</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Inside the coastline on land.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">OPEC</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Organization of the Petroleum Exporting Countries.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Performance Bonds</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">The performance bonds issued by Zurich in connection with the construction of two MPSVs that were subject to our MPSV Litigation, for which the face amount of the bonds totaled $50.0 million, and for which the obligations under the performance bonds were terminated on November 6, 2023, in connection with the Settlement Agreement and Note Agreement.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">performance obligation</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">A contractual obligation to construct and transfer a distinct good or service to a customer. It is the unit of account in Topic 606. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">piles</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Rigid tubular pipes that are driven into the seabed to anchor a jacket.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">platform</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">A structure from which offshore oil and gas development drilling and production are conducted.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">POC</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Percentage-of-completion.</span></p></td>
   </tr>
  </table>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">iii</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:19%;"/>
    <td style="width:1%;"/>
    <td style="width:80%;"/>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">PPP Loan</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our previous loan from Whitney Bank forgiven pursuant to the Paycheck Protection Program.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Restrictive Covenant Agreement</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our previous restrictive covenant arrangement with Zurich to secure our obligations and liabilities under our general indemnity agreement with Zurich associated with outstanding surety bonds for certain contracts that precluded us from paying dividends or repurchasing shares of our common stock, which was terminated on November 6, 2023, in connection with the Settlement Agreement and Note Agreement.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">RSUs</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Restricted Stock Units.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">SBA</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Small Business Administration.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">SEC</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">U.S. Securities and Exchange Commission.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Services Division</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Services reportable segment.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Settlement Agreement</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Agreement entered into with Zurich on November 6, 2023, in connection with the resolution of our MPSV Litigation, pursuant to which, among other things, Zurich released GIS and the Company from all of their obligations under the Performance Bonds and the associated general indemnity agreements relating to the Performance Bonds, and we agreed to release possession of the MPSVs to Zurich.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Share Repurchase Program</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Share repurchase program authorizing the repurchase of up to $5.0 million of our outstanding common stock, effective from December 15, 2023 through December 15, 2024.</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Shipyard Division</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Shipyard reportable segment.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Shipyard Transaction</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">The sale of our Shipyard Division&#8217;s operating assets and certain construction contracts in the second quarter 2021, which excluded the contracts and related obligations for our Ferry Projects and the contracts and related obligations for the projects that were subject to our MPSV Litigation.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Spud barge</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Construction barge rigged with vertical tubular or square lengths of steel pipes that are lowered to anchor the vessel.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Statement of Cash Flows</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Consolidated Statements of Cash Flows, as filed in this Report.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Statement of Operations</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Consolidated Statements of Operations, as filed in this Report.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Statement of Shareholders&#8217; Equity</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Our Consolidated Statements of Changes in Shareholders&#8217; Equity, as filed in this Report.</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Surety or Sureties</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">A financial institution that issues bonds to customers on behalf of the Company for the purpose of providing third-party financial assurance related to the performance of our contracts. Payments by the Surety pursuant to a bond in the event of non-performance are subject to reimbursement to the Surety by us under a general indemnity agreement.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">T&amp;M</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Time and materials. Work is performed and billed to the customer at contracted time and material rates.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Topic 606</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">The revenue recognition criteria prescribed under ASU 2014-09, &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Revenue from Contracts with Customers&#8221;</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">U.S.</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">The United States of America.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">USL&amp;H</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">United States Longshoreman and Harbor Workers Act.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">VA(s)</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Valuation Allowance(s).</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Whitney Bank</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Hancock Whitney Bank.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Zurich</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">FDC and Zurich American Insurance Company.</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">iv</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cautionary Statement on Forward-Looking Information</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">This Report contains forward-looking statements in which we discuss our potential future performance, operations and projects. Forward-looking statements, within the meaning of the safe harbor provisions of the U.S. Private Securities Litigation Reform Act of 1995, are all statements other than statements of historical facts, such as projections or expectations relating to operating results; diversification and entry into new end markets; improvement of risk profile; industry outlook; oil and gas prices; timing of investment decisions and new project awards; cash flows and cash balance; capital expenditures; tax rates; implementation of our share repurchase program; liquidity; and execution of strategic initiatives. The words &#8220;anticipates,&#8221; &#8220;may,&#8221; &#8220;can,&#8221; &#8220;plans,&#8221; &#8220;believes,&#8221; &#8220;estimates,&#8221; &#8220;expects,&#8221; &#8220;projects,&#8221; &#8220;targets,&#8221; &#8220;intends,&#8221; &#8220;likely,&#8221; &#8220;will,&#8221; &#8220;should,&#8221; &#8220;to be,&#8221; &#8220;potential&#8221; and any similar expressions are intended to identify those assertions as forward-looking statements. The timing and amount of any share repurchases will be at the discretion of management and will depend on a variety of factors including, but not limited to, our operating performance, cash flow and financial position, the market price of our common stock and general economic and market conditions. The share repurchase program may be modified, increased, suspended or terminated at any time at the Board&#8217;s discretion.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We caution readers that forward-looking statements are not guarantees of future performance and actual results may differ materially from those anticipated, projected or assumed in the forward-looking statements. Important factors that can cause our actual results to differ materially from those anticipated in the forward-looking statements include: supply chain disruptions, inflationary pressures, economic slowdowns and recessions, natural disasters, public health crises, labor costs and geopolitical conflicts, and the related volatility in oil and gas prices and other factors impacting the global economy; cyclical nature of the oil and gas industry; competition; reliance on significant customers; competitive pricing and cost overruns on our projects; performance of subcontractors and dependence on suppliers; timing and our ability to secure and commence execution of new project awards, including fabrication projects for refining, petrochemical, LNG, industrial and sustainable energy end markets; our ability to maintain and further improve project execution; nature of our contract terms and customer adherence to such terms; suspension or termination of projects; changes in contract estimates; customer or subcontractor disputes; operating dangers, weather events and availability and limits on insurance coverage; operability and adequacy of our major equipment; our ability to raise additional capital; our ability to amend or obtain new debt financing or credit facilities on favorable terms; our ability to generate sufficient cash flow; our ability to resolve any material legal proceedings; our ability to execute our share repurchase program and enhance shareholder value; our ability to obtain letters of credit or surety bonds and ability to meet any indemnification obligations thereunder; consolidation of our customers; financial ability and credit worthiness of our customers; adjustments to previously reported profits or losses under the percentage-of-completion method; our ability to employ a skilled workforce; loss of key personnel; utilization of facilities or closure or consolidation of facilities; failure of our safety assurance program; barriers to entry into new lines of business; weather impacts to operations; any future asset impairments; changes in trade policies of the U.S. and other countries; compliance with regulatory and environmental laws; lack of navigability of canals and rivers; systems and information technology interruption or failure and data security breaches; performance of partners in any future joint ventures and other strategic alliances; shareholder activism; and other factors described under </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Part I, Item 1A of this Report and as may be further updated by subsequent filings with the SEC.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Additional factors or risks that we currently deem immaterial, that are not presently known to us or that arise in the future could also cause our actual results to differ materially from our expected results. Given these uncertainties, investors are cautioned that many of the assumptions upon which our forward-looking statements are based are likely to change after the date the forward-looking statements are made, which we cannot control. Further, we may make changes to our business plans that could affect our results. We caution investors that we undertake no obligation to publicly update or revise any forward-looking statements, which speak only as of the date made, for any reason, whether as a result of new information, future events or developments, changed circumstances, or otherwise, and notwithstanding any changes in our assumptions, changes in business plans, actual experience or other changes.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="part_i"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">PA</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">RT I</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="items_1_2_business_properties"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Items 1. and 2. Busi</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ness and Properties</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain terms are defined in the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Glossary of Terms&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">beginning on page ii. References to &#8220;Notes&#8221; relate to the Notes to our Consolidated Financial Statements (&#8220;Financial Statements&#8221;) in Item 8.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Description of Operations</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gulf Island Fabrication, Inc. (together with its subsidiaries, &#8220;Gulf Island,&#8221; &#8220;the Company,&#8221; &#8220;we,&#8221; &#8220;us&#8221; and &#8220;our&#8221;) is a Louisiana corporation, which was incorporated in 1985. We are a leading fabricator of complex steel structures and modules and provider of specialty services, including project management, hookup, commissioning, repair, maintenance, scaffolding, coatings, welding enclosures, civil construction and staffing services to the industrial and energy sectors. Our customers include U.S. and, to a lesser extent, international energy producers; refining, petrochemical, LNG, industrial and power operators; and EPC companies. Our corporate headquarters is located in The Woodlands, Texas and our primary operating facilities are located in Houma, Louisiana (&#8220;Houma Facilities&#8221;). See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Overview&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> section in Item 7 for discussion of our current business and outlook.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We currently operate and manage our business through three operating divisions (&#8220;Services&#8221;, &#8220;Fabrication&#8221; and &#8220;Shipyard&#8221;) and one non-operating division (&#8220;Corporate&#8221;), which represent our reportable segments. Our three operating divisions and Corporate Division are discussed below.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Services Division</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Services Division provides maintenance, repair, construction, scaffolding, coatings, welding enclosures and other specialty services on offshore platforms and inland structures and at industrial facilities; provides services required to connect production equipment and service modules and equipment on offshore platforms; provides project management and commissioning services; provides industrial staffing services; and performs municipal and drainage projects, including pump stations, levee reinforcement, bulkheads and other public works. Our services activities are managed from our various Facilities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabrication Division</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our Fabrication Division fabricates modules, skids and piping systems for onshore refining, petrochemical, LNG and industrial facilities and offshore facilities; fabricates foundations, secondary steel components and support structures for alternative energy developments and coastal mooring facilities; fabricates offshore production platforms and associated structures, including jacket foundations, piles and topsides for fixed production and utility platforms, as well as hulls and topsides for floating production and utility platforms; and fabricates other complex steel structures and components. Our fabrication activities are performed at our Houma Facilities.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Shipyard Division </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Our Shipyard Division previously fabricated newbuild marine vessels and provided marine repair and maintenance services. However, in the second quarter 2021, we sold our Shipyard Division operating assets and certain construction contracts (&#8220;Shipyard Transaction&#8221;). The Shipyard Transaction excluded the contracts and related obligations for our seventy-vehicle ferry and two forty-vehicle ferry projects (collectively, &#8220;Ferry Projects&#8221;) that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. Construction of the Ferry Projects was performed at our Houma Facilities and the wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. Final completion of the wind down will occur upon completion of the warranty periods for the Ferry Projects, the last of which is anticipated to occur in the first quarter 2025. See Note 1 for further discussion of the Shipyard Transaction, Note 2 for further discussion of our Ferry Projects and Note 7 for further discussion of the resolution of our MPSV Litigation.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Corporate Division and Allocations</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Corporate Division includes costs that do not directly relate to our operating divisions. Such costs include, but are not limited to, costs of maintaining our corporate office, executive management salaries and incentives, board of directors&#8217; fees, certain insurance costs and costs associated with overall corporate governance and reporting requirements for a publicly traded company. Shared resources and costs that benefit more than one operating division are allocated amongst the operating divisions based on each operating division&#8217;s estimated share of the benefit received. Such costs include, but are not limited to, human resources, insurance, information technology, accounting, business development and certain division leadership.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Facilities and Equipment</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Houma</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Facilities</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our fabrication and primary administrative and operating facilities are located in Houma, Louisiana (&#8220;Houma Facilities&#8221;) on approximately 160 acres on the east bank of the Houma Navigation Canal, approximately 30 miles from the Gulf of Mexico (&#8220;GOM&#8221;). The owned facility includes approximately 73,000 square feet of administrative and operations facilities, 242,000 square feet of covered fabrication facilities, 90,000 square feet of warehouse facilities, and 16,000 square feet of blasting and coating facilities. It also has 3,305 linear feet of water frontage, including 2,056 feet of steel bulkheads. Buildings and equipment that are significant to our Houma Facilities include:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">large assembly buildings equipped with overhead cranes for modular section fabrication and various equipment for pipe fitting and welding;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">prefabrication shops equipped with overhead cranes, cutting tables, coping machines, sub-arc welding stations, hydraulic iron workers, and various other equipment for fabricating steel structures and components;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">plate bending, rolling and assembly shop with the capability to roll steel and automatic weld process seams into tubular pipe sections;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">alloy and carbon steel pipe fabrication and spooling shops equipped with overhead cranes, pipe benders, pipe cutters, pipe spooling and welding stations, and various equipment for pipe fitting and welding;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">blasting and coating shops that enable under roof blast and paint services;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">large warehouse buildings for storage;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">crawler cranes and rubber-tired hydraulic modular transporters;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">deck barge for transporting equipment and fabricated products;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">truckable tug and spud barges with cranage for marine construction activities; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">various civil construction equipment.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In February 2024, we sold certain property of our Fabrication Division that was part of our Houma Facilities. The property sold was classified as an asset held for sale (&#8220;Houma AHFS&#8221;) on our Balance Sheet at December 31, 2023. The Houma AHFS are excluded from the property description discussed above. See Note 3 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Overview&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of our Houma AHFS.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have a Mortgage Agreement associated with the real estate of our Houma Facilities that secures our obligations and liabilities under our Note Agreement and general indemnity agreement with Zurich associated with an outstanding surety bond for our forty-vehicle ferry projects. See Note 4 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Liquidity and Capital Resources&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of our Mortgage Agreement and Note Agreement.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other Facilities</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our other administrative and operating facilities (together with our Houma Facilities, &#8220;Facilities&#8221;) include:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Ingleside Facility</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Owned warehouse and operating facility located in Ingleside, Texas, consisting of approximately 10,000 square feet of buildings on approximately 4.0 acres.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Harvey Facility </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Leased warehouse and operating facility located in Harvey, Louisiana, consisting of approximately 12,000 square feet of buildings on approximately 1.5 acres. </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Broussard Facility </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Leased warehouse and operating facility located in Broussard, Louisiana, consisting of approximately 10,000 square feet of buildings on approximately 2.5 acres. </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Leased administrative offices in The Woodlands, Texas and New Iberia, Louisiana.</span></div></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Materials, Supplies and Subcontractors</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The principal materials and supplies used in our operations across all our divisions include standard steel shapes, steel plate, steel pipe, welding gases, welding wire, fuel, oil and paint, all of which are currently available from many sources. We do not depend upon any single supplier or source for our materials and supplies. We anticipate being able to obtain these materials for the foreseeable future; however, the pricing, availability and delivery schedules offered by our suppliers may vary significantly from year to year due to various factors, including supply chain disruptions, labor shortages, wage pressures, rising inflation and potential economic slowdown or recession, public health crises, geopolitical conflicts, foreign currency exchange rate fluctuations, supplier consolidations, supplier raw material shortages, customer demand, and any duties and tariffs imposed on the materials or other import restrictions. In 2023, we continued to experience increased costs of materials and supplies due to inflation and continued supply chain delays and shortages. While pricing and availability of materials and supplies did not significantly impact our results in 2022 or 2023, these issues may continue and may have a more significant impact on our results in 2024. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1A for further discussion of our use of raw materials and supplies and the impact of global macroeconomic conditions and geopolitical conditions on our operations.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The majority of the steel plate used in our operations arrives at our facilities in bulk, which we then cut into the form needed or roll into tubular sections in our rolling mill. Tubular sections can be welded together in long straight tubes to become legs or into shorter tubes to become part of a network of bracing. Various cuts and welds in the fabrication process are performed by computer-controlled equipment. We procure steel from both domestic and foreign mills. Delivery from domestic steel mills can take weeks or months and delivery from foreign steel mills, including transit time, can take several months. Additionally, the U.S. sometimes imposes tariffs on certain imported steel which can result in higher cost for foreign steel. To mitigate the risk of increasing cost of materials during the life of a contract, we often negotiate escalation clauses in our customer contracts for steel pricing adjustments tied to changes in relevant indices.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition to the materials and supplies described above used in our fabrication process, we also use third-party manufacturers for engineered and manufactured equipment added to the structures and modules that we fabricate. To mitigate our risk of increasing costs, we often negotiate and purchase such equipment from the manufacturer at a fixed price. Additionally, we may use subcontractors when their use enables us to meet customer requirements for resources, schedule, cost or technical expertise. Subcontractors may range from small local entities to companies with global capabilities, some of which may be utilized on a repetitive or preferred basis.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Human Capital Management</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our employees are our most important assets and serve as the foundation for our ability to achieve our financial and strategic objectives.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Employee Statistics </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Our workforce varies based on our level of activity at any particular time. At December 31, 2023, we had 839 full-time employees and two part-time employees, compared to 874 full-time employees and one part-time employee at December 31, 2022. In addition, we often use independent contract labor to supplement our workforce, and at December 31, 2023 and 2022, we had 94 and 83, respectively, of independent contract labor personnel. None of our employees are employed under a collective bargaining agreement and we believe our relationship with our employees is favorable. Labor hours worked during 2023 and 2022 were 1.7 million and 1.7 million, respectively. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1A for further discussion of our use of contract labor and industry-wide labor constraints.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Recruitment, Training and Workforce Development </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our success depends on our ability to attract, develop, motivate and retain a highly-skilled workforce that includes craft labor as well as supervision and project management. To support the development of our workforce, we offer supervision and other training programs to educate and elevate the skillsets of our front-line leaders. We also provide internal hands-on technical fitting and welding training programs and instruction to develop our craft labor and maintain high quality standards. We have also created a succession plan for all senior leadership positions. During 2022, we were awarded a Texas Workforce Commission Skills Development grant. These funds enhance our ability to deliver on-demand technical training to help develop the next generation of skilled craft professionals in pipe fitting, welding, scaffold building, painting/blasting, equipment operation, and rigging in our rapidly growing industry. The grant enabled us to train 220 and 284 employees during 2023 and 2022, respectively. During 2022, we were also awarded an Incumbent Worker Training Program grant through the Louisiana Workforce Commission. This program provides supplemental funding for, among other things, skills, safety and environmental training through third-party providers for craft personnel and leadership. The grant enabled us to train 552 and 91 employees during 2023 and 2022, respectively.</span><span style="color:#0e101a;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Employee Benefits </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Our compensation programs are designed to attract, motivate and retain our employees. We provide competitive base wages and salaries consistent with employee positions, skills and experience levels, and geographic locations. Employees are eligible to receive paid and unpaid leave and participate in our health insurance and life, disability and accident insurance programs. We also offer retirement benefits through our 401(k) plan, which includes discretionary Company-matching contributions. During 2023 and 2022, we conducted annual employee benefits surveys to gain a better understanding of how our various benefit programs are valued by our employees. The employee feedback indicated a desire for additional medical plan options, a preference for smartphone and email communication, and more education on health wellness and long-term care. As a result, we included a high-deductible health plan option and health savings account option in our benefit program offerings for 2023 and 2022, along with an identity theft benefit offering, and incorporated health wellness incentives and expanded education opportunities into our benefit program offerings for 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Employee Engagement</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2023 and 2022, we incorporated feedback from our employees into our training and safety programs and employee benefit program offerings. The feedback was gathered from our employee satisfaction and safety culture surveys performed during 2023, and our annual employee benefits survey conducted in 2023 and 2022, which provided employee perspectives on working for the Company and suggestions for improvements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Diversity and Inclusion</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our commitment to diversity extends across all divisions and disciplines of our business. We leverage multiple platforms to expand our reach for diverse talent and also use recruiting sites focused on veterans and individuals with disabilities. At December 31, 2023 and 2022, approximately 54% and 51%, respectively, of our workforce were women or minorities. During each of 2023 and 2022, we conducted our annual leadership workshop for approximately 150 front-line leaders, respectively, that consisted of, among other things, a two-day interactive training on communication skills, mental health awareness, leading the &#8220;younger generations&#8221; and prevention of sexual harassment. During 2023, we also began tracking our annual spend with veteran and minority owned vendors in connection with our diversity, equity and inclusion initiatives.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A for further discussion of our ability to attract and retain qualified employees.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Safety</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are committed to the safety and health of our employees and contractors and believe that a strong safety culture is a critical element of our success. We continue to improve and maintain a comprehensive safety management system designed to ensure the safety of our employees and contractors and allow us to remain in compliance with all applicable federal and state mandated safety regulations. We are committed to maintaining a well-trained workforce and providing timely instruction to ensure our employees have the knowledge and skills to perform their work safely while maintaining the highest standards of quality. We provide continuous safety education and training to employees and contractors on a variety of topics to ensure they are ready for the challenges inherent in all our projects. Our employees commence training on their first day of employment with a comprehensive orientation class that addresses Company policies and procedures and provides clear expectations for working safely. During 2022, our health, safety and environmental training system was audited and accredited by a third-party compliance organization.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2023 and 2022, we completed supervisor safety workshops that were delivered to leadership, including our front-line supervisors. The focus of these workshops is to drive a strong safety culture, incorporate human performance and risk tolerance principles, and emphasize the supervisor&#8217;s role in safety coaching and mentoring. During 2023 and 2022, we successfully trained approximately 100% and 98%, respectively, of our front-line supervision. We also continued to emphasize the &#8220;execution diamond&#8221;, a tool to drive our employees and contractors to plan, stop and think before engaging in an activity, perform appropriate risk assessments, and use their &#8220;stop work&#8221; authority. Our total recordable incident rate for 2023 and 2022 was 0.55 and 0.38, respectively. During 2023, and 2022, we also began tracking our &#8220;significant incident and fatality&#8221; potential incidents, which indicated our rate for 2023 and 2022 was 0.64 and 1.03, respectively.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have a zero-tolerance policy for drugs and alcohol use in the workplace. We support this policy through the application of a comprehensive drug and alcohol screening program that includes initial screenings for all employees during our hiring process and periodic random screenings throughout employment. Additionally, we require our contractors to follow alcohol and drug screening policies substantially the same as our policy.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our employees are given opportunities to be a part of a dedicated safety committee which is comprised of peer-elected craft employees and members of management to assist in supporting our efforts to continuously improve safety performance. A safety component is also included in our annual incentive program guidelines for our executive officers and other key employees. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A for further discussion of the importance of safety in our operations.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Environmental</span></p>
  <p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our commitment to protecting the environment continues to be a strong principle that governs our work. We continuously look for ways to reduce our environmental impact, including a focus on protecting the land, water, and wildlife habitats in our surrounding communities, with an emphasis on spill prevention, water and waste management, air emissions and other natural resource conservation. We are further focused on energy efficiency and reducing our carbon footprint within our daily operations. During 2023 and 2022, we continued our efforts in managing and monitoring our air emissions, water discharges, energy consumption and greenhouse gases. This monitoring will allow us to establish baseline emission matrices based on the various types of fabrication projects we perform. During 2022, we also conducted hazardous waste minimization and pollution prevention training for our employees.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are also focused on managing and monitoring our air emissions related to all facets of our painting and blasting operations to ensure compliance with our Louisiana Department of Environmental Quality operating air permits. We monitor and report criteria pollutants and toxic air pollutants, which includes daily tracking of our paint, thinner and cleaning solvents usage. We have also implemented abrasive blasting management best practices to reduce particulate matter emissions and reduce offsite impacts to surrounding communities from our abrasive blasting activities. This includes routine inspections, record keeping and personnel training.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our environmental management system is certified by ISO 14001:2015, which represents internationally recognized standards for environmental management overseen by the International Standard Organization (&#8220;ISO&#8221;) based in Geneva, Switzerland. This certification helps our management and employees ensure we are measuring and improving our environmental impact by improving the efficiency of our resources, consistently addressing environmental obligations and reducing waste and environmental risks. The certification helps us maintain our commitment to protecting the environment as a leader in the fabrication industry. The certification is based on a review of our programs and procedures and is subject to annual audit and full recertification every three years. The last audit of our certification occurred in March 2023. Our environmental management system was recertified in January 2024, and the certification is valid through January 2027.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Quality Assurance</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We use modern welding and fabrication technology, and all of our fabrication projects are executed in accordance with industry standards, specifications and regulations, including those published by the American Petroleum Institute, the American Welding Society, the American Society of Mechanical Engineers, the American Bureau of Shipping, the U.S. Coast Guard and customer specifications. We maintain training programs for technical fitting and welding instruction in order to prepare and upgrade our skilled labor workforce, and to maintain high standards of quality. In addition, we maintain on-site facilities for the non-destructive testing of all welds, a process performed by independent third-parties.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our quality management systems are certified by ISO 9001-2015, which represents internationally recognized standards for quality management. Similar to our environmental certification, this certification is based on a review of our programs and procedures and is subject to annual audit and full recertification every three years. Our quality management systems were audited and recertified in March 2023, and the certification is valid through March 2026. Our quality management systems are also certified by the American Institute of Steel Construction and American Society of Mechanical Engineers, for which the certifications are valid through July 2024 and November 2024, respectively.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Customers</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our principal customers include U.S. and, to a lesser extent, international energy producers; refining, petrochemical, LNG, industrial and power operators; and EPC companies. A large portion of our revenue in any given year may be generated by only a few customers, although not necessarily the same customers from year to year. For 2023, two customers accounted for 53% of our consolidated revenue (excluding the negative revenue charge associated with the resolution of our MPSV Litigation for our Shipyard Division), one of which related to offshore services for our Services Division and small-scale fabrication for our Fabrication Division and the other related to our offshore jackets project for our Fabrication Division. For 2022, two customers accounted for 48% of our consolidated revenue, which related to offshore services for our Services Division and small-scale fabrication for our Fabrication Division.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contracting</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our revenue is derived from customer contracts and agreements that are awarded on a competitively bid and negotiated basis using a range of contracting options, including fixed-price, unit-rate, time and materials (&#8220;T&amp;M&#8221;) and cost-reimbursable, or a combination thereof. Our contracts primarily relate to certain service arrangements and the fabrication of steel structures and modules. Such contracts vary in duration depending on the size and complexity of the project.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue for our long-term contracts is recognized using the percentage-of-completion method, based on contract costs incurred to date compared to total estimated contract costs. Contract costs include direct costs, such as materials and labor, and indirect costs attributable to contract activity. Material costs that are significant to a contract and do not reflect an accurate measure of project completion are excluded from the determination of our contract progress. Revenue for such materials is only recognized to the extent of costs incurred.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue for our short-term contracts (which includes revenue associated with our master services arrangements) and contracts that do not satisfy the criteria for revenue recognition over time is recognized when the work is performed or when control of the asset is transferred, the related costs are incurred and collection is reasonably assured. See Notes 1 and 2, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Critical Accounting Policies&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of our contracting terms and revenue recognition.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">New Project Awards and Backlog</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">New project awards represent expected revenue values of new contract commitments received during a given period, including scope growth on existing commitments. A commitment represents authorization from our customer to begin work or purchase materials pursuant to a written agreement, letter of intent or other form of authorization. Backlog represents the unrecognized revenue for our new project awards and at December 31, 2023, was consistent with the value of remaining performance obligations for our contracts required to be disclosed under Topic 606 and presented in Note 2. In general, a performance obligation is a contractual obligation to construct and/or transfer a distinct good or service to a customer. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. We believe that backlog, a non-GAAP financial measure, provides useful information to investors as it represents work that we are obligated to perform under our current contracts. New project awards and backlog may vary significantly each reporting period based on the timing of our major new contract commitments.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Projects in our backlog are generally subject to delay, suspension, termination, or an increase or reduction in scope at the option of the customer; however, the customer is required to pay us for work performed and materials purchased through the date of termination, suspension, or decrease in scope. Depending on the size of the project, the delay, suspension, termination or increase or decrease in scope of any one contract could significantly impact our backlog and change the expected amount and timing of revenue recognized. See</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> &#8220;New Project Awards and Backlog&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of our new project awards and backlog, and Notes 1 and 2, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Critical Accounting Policies&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7, for further discussion of our contracting terms and revenue recognition.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Seasonality</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our operations may be subject to seasonal variations due to weather conditions, including any seasonal weather conditions that may increasingly arise due to the effects of climate change, and available daylight hours. Although we have large, covered fabrication facilities, a significant amount of our construction activities continue to take place outdoors, and accordingly, the number of labor hours worked may decline during the winter months due to unfavorable weather conditions and a decrease in daylight hours. In addition, the seasonality of oil and gas industry activity in the Gulf Coast region also affects our operations. Our offshore oil and gas customers often schedule the completion of their projects during the summer months in order to take advantage of more favorable weather during such months. Further, rainy weather, tropical storms, hurricanes and other storms prevalent in the GOM and along the Gulf Coast may also affect our operations. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A for further discussion of the impacts seasonal weather conditions and extreme adverse weather events have on our operations.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Competition</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We operate within highly competitive markets which are significantly impacted by oil and gas prices. Declines in oil and gas prices can create excess capacity and under-utilization of our competitor&#8217;s facilities, resulting in more intense competition in the bidding process for new project awards. Previous decreases in oil and gas prices have led many companies, including us, to reduce their skilled workforce. These reductions, with a subsequent increase in oil and gas prices, have created a competitive labor market, resulting in higher cost of labor, including increases in wage rates and the cost of recruiting and training to attract and retain qualified personnel. In addition, we expect to face increased competition as we seek fabrication opportunities related to rapidly growing energy transition initiatives, including in support of our customers who are making energy transitions away from fossil fuels, opportunities related to offshore wind developments and future onshore infrastructure projects where modular designed steel structures are core to the execution strategy. Further, there are numerous regional, national and global competitors that offer similar services to those offered by each of our operating divisions. These competitors may be larger than us with more resources and facilities in both the U.S. and abroad. Competition with foreign competitors can also be challenging as such competitors often have lower operating costs and lower wage rates, and foreign governments often use subsidies and incentives to create local jobs and impose import duties and fees on products. In addition, technological innovations have lowered transportation costs and increased the competitiveness of foreign competitors when exporting structures from foreign locations to the GOM and Gulf Coast, which may hinder our ability to successfully secure new awards for projects destined for the GOM and Gulf Coast. Uncertainties with respect to tariffs on materials and fluctuations in the value of the U.S. dollar and other factors, may also impact our ability to compete effectively.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Although we believe price and the contractor&#8217;s ability to meet a customer&#8217;s delivery schedule and project requirements are principal factors in determining which contractor is awarded a project, customers also consider, among other things, a contractor&#8217;s past project experience, the availability of technically capable personnel, facility capacity and location, production efficiency, condition of equipment, reputation, safety record, customer relations and financial strength. We believe that our strategic location, competitive pricing, expertise in fabricating and servicing onshore and offshore structures and facilities, and the certification of our facilities as ISO 9001-2015 will enable us to continue to compete effectively for projects. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A for further discussion of the competitive landscape in the industries we serve.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Government and Environmental Regulation</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our operations and properties are subject to a wide variety of increasingly complex and stringent federal, state and local environmental laws and other regulations, including those governing discharges into the air and water, the handling and disposal of solid and hazardous wastes, and the remediation of soil and groundwater contaminated by hazardous substances. Compliance with many of these laws is becoming increasingly complex, stringent and expensive. These laws may impose &#8220;strict liability&#8221; for damages to natural resources and threats to public health and safety, rendering a party liable for the environmental damage without regard to negligence or fault on the part of such party.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our operations are also governed by laws and regulations relating to the health and safety of our employees, primarily the Occupational Safety and Health Act and regulations promulgated thereunder. Various governmental and quasi-governmental agencies require certain permits, licenses and certificates with respect to our operations. We believe that we have all material permits, licenses and certificates necessary for the conduct of our existing business.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our employees may engage in certain activities, including interconnect piping and other service activities conducted on offshore platforms, activities performed on spud barges owned or chartered by us, and barges owned by us, that are covered in either the provisions of the Jones Act or U.S. Longshoreman and Harbor Workers Act (&#8220;USL&amp;H&#8221;). These laws make the liability limits established under state workers&#8217; compensation laws inapplicable to these employees and permit them or their representatives to pursue actions against us for damages or job-related injuries, with generally no limitations on our potential liability.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Many aspects of our operations and properties are materially affected by federal, state and local regulations, as well as certain international conventions and private industry organizations. The exploration and development of oil and gas properties located on the outer continental shelf of the U.S. is regulated primarily by the Bureau of Ocean Energy Management and Enforcement of the Department of Interior, which is responsible for the administration of federal regulations under the Outer Continental Shelf Lands Act requiring the construction of offshore platforms located on the outer continental shelf to meet stringent engineering and construction specifications. Violations of these regulations and related laws can result in substantial civil and criminal penalties as well as injunctions curtailing operations. We believe that our operations are in compliance with these and all other regulations affecting the fabrication of platforms for delivery to the outer continental shelf of the U.S. In addition, demand for our services from the oil and gas industry can be affected by changes in taxes, price controls and other laws and regulations affecting this industry. It is also possible that the current administration and Congress will impose additional environmental regulations that will restrict federal oil and gas leasing, permitting or drilling practices on public lands and waters. Offshore construction and drilling in certain areas has also been opposed by environmental groups and, in certain areas, has been restricted. To the extent laws are enacted or other governmental actions are taken that prohibit or restrict offshore construction and drilling or impose environmental protection requirements that result in increased costs to the oil and gas industry in general and the offshore construction industry in particular, our business and prospects could be adversely affected. We cannot determine to what extent future operations and earnings may be affected by new legislation, new regulations or changes in existing regulations.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, we could be affected by future laws or regulations, including those imposed in response to concerns over climate change, other aspects of the environment, or natural resources. Due to concerns that carbon dioxide, methane and certain other greenhouse gases may produce climate changes that have significant impacts on public health and the environment, various governmental authorities have considered and are continuing to consider the adoption of regulatory strategies and controls designed to reduce the emission of greenhouse gases resulting from regulated activities, which if adopted in areas where we conduct business, could require us or our customers to incur additional compliance costs, may result in delays in the pursuit of regulated activities, prevent customers&#8217; projects from going forward and could adversely affect demand for the oil and natural gas that some of our customers produce, thereby potentially limiting demand for our services. For example, the Inflation Reduction Act of 2022 imposes a federal fee on the emission of greenhouse gases. Further, in January 2024 the Biden administration issued an executive order temporarily pausing approvals for pending and future applications to export LNG from new projects, due to, among other things, greenhouse gas emissions.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are also subject to the Comprehensive Environmental Response, Compensation, and Liability Act of 1980, as amended and similar laws which provide for responses to and liability for releases of hazardous substances into the environment. Additionally, the Clean Air Act, the Clean Water Act, the Resource Conservation and Recovery Act, the Safe Drinking Water Act, the Emergency Planning and Community Right to Know Act, each as amended, and similar foreign, state or local counterparts to these federal laws, regulate air emissions, water discharges, hazardous substances and wastes, and require public disclosure related to the use of various hazardous substances. Compliance with such environmental laws and regulations may require the acquisition of permits or other authorizations for certain activities and compliance with various standards or procedural requirements. We believe that our facilities are in substantial compliance with current regulatory standards.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, our operations are subject to extensive government regulation by the U.S. Coast Guard, as well as various private industry organizations such as the American Petroleum Institute, American Society of Mechanical Engineers, American Welding Society and the American Bureau of Shipping.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our compliance with these laws and regulations has entailed certain additional expenses and changes in operating procedures; however, we believe that compliance efforts have not resulted in a material adverse effect on our business or financial condition. Future events, such as changes in existing laws and regulations or their interpretation, more vigorous enforcement policies of regulatory agencies, or stricter or different interpretations of existing laws and regulations, may require additional expenditures by us. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A for further discussion of government and environmental regulations impacting our business.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Insurance</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We maintain insurance coverage for various aspects of our business and operations. However, we may be exposed to future losses due to coverage limitations and our use of deductibles and self-insured retentions for our exposures related to property and equipment damage, builder&#8217;s risk, third-party liability, and worker&#8217; compensation and USL&amp;H. In connection with our insurance coverage renewal for our property and equipment during 2023, we determined that the benefits of maintaining insurance coverage for our property and equipment were limited due to high premium costs and deductibles and increased coverage limitations. Accordingly, we did not renew all of our property and equipment coverage and are now generally self-insured for exposures resulting from any future damage to our property and equipment. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A for further discussion of limitations of our insurance coverage.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Available Information</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We make available our annual reports on Form 10-K, quarterly reports on Form 10-Q, current reports on Form 8-K and amendments to those reports, free of charge through our Internet website at www.gulfisland.com as soon as reasonably practicable after such materials are electronically filed with or furnished to the U.S. Securities and Exchange Commission (the &#8220;SEC&#8221;). The SEC also maintains an Internet website at www.sec.gov that contains periodic reports, proxy and information statements, and other information regarding issuers that file electronically with the SEC. Our website and the information contained therein or connected thereto are not intended to be incorporated into this Report.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_1a_risk_factors"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 1A. Ri</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">sk Factors</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following discussion of risk factors contains forward-looking statements (see </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Cautionary Statement on Forward-Looking Information&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">). These risk factors are important to understanding other statements in this Report. The following information should be read in conjunction with Item 7 </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and Item 8 </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Financial Statements and Supplementary Data&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> found elsewhere in this Report, which may include additional factors that could adversely affect our business. References to &#8220;Notes&#8221; relate to the Notes to our Consolidated Financial Statements (&#8220;Financial Statements&#8221;) in Item 8.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our business, prospects, financial condition, operating results, cash flows, liquidity and stock price may be affected materially and adversely, in whole or in part, by a number of factors, whether currently known or unknown, including but not limited to those described below, any one or more of which could, directly or indirectly, cause our actual financial condition, operating results, liquidity and cash flows to vary materially from historical results or those anticipated, projected or assumed in our forward-looking statements. Further, new risks emerge from time to time. In addition, our business, prospects, financial condition, operating results, cash flows, liquidity and stock price could be affected by additional factors that apply to all companies generally which are not specifically mentioned below.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Business and Industry Risks</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our revenue and profitability continues to be dependent on the offshore oil and gas industry, which is a historically cyclical industry.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our business continues to be significantly dependent on the level of capital expenditures by oil and gas producers, processors and their contractors, as well as alternative energy companies, operating in the GOM and along the Gulf Coast. The level of capital expenditures by these companies can be impacted by oil and gas and associated commodity prices. In recent years, the price of oil and gas has experienced significant volatility, which resulted in reductions in capital spending and drilling activities from our traditional offshore oil and gas customer base. Consequently, our operating results and cash flows were negatively impacted from reductions in revenue, lower margins due to competitive pricing, and under-utilization of our operating facilities and resources. Although oil and gas prices have recovered from the historic lows seen in 2020, due in part to geopolitical conflicts, there are no assurances that the increase in prices will be sustained or that our business will continue to benefit from such increase in prices.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition to commodity prices, the levels of our customers&#8217; capital expenditures are influenced by, among other things:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">availability and cost of capital;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the cost of exploring for, producing and delivering oil and gas and the sufficiency of any returns on capital investments;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the sale and expiration dates of offshore leases in the U.S. and overseas;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the discovery rate, size and location of new oil and gas reserves;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">demand for energy, including hydrocarbon production, which is affected by worldwide economic activity and uncertainty and population growth, as well as geopolitical conflicts;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the ability of the Organization of the Petroleum Exporting Countries (&#8220;OPEC&#8221;) to set and maintain production levels for oil and the level of production by non-OPEC countries; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">political events and conditions, including socio-political unrest, any government shutdown, instability or hostilities, and trade and monetary sanctions in response to such developments;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">demand for, availability of and technological viability of, alternative sources of energy;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">technological advances affecting energy exploration, production, transportation and consumption;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">weather conditions, natural disasters, and global or regional public health crises and other catastrophic events; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">uncertainty regarding the U.S. energy policy, including local, state and federal laws and regulations that would negatively impact or restrict the oil and gas industry.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are unable to predict future oil and gas prices or the level of oil and gas industry activity for the services we provide. Further, the current relative stabilization in oil and gas prices and increase in bidding activity may not necessarily translate into long-term increased activity. Even during periods of relatively high oil and gas prices, our customers may cancel or curtail capital expenditure programs for exploration and production and repair and maintenance of their offshore assets due to uncertainty regarding oil and gas prices and other priorities for cash flows, including investment in energy transition projects. Advances in onshore exploration and development technologies, or energy transition projects, could result in our historical customers allocating a higher percentage of their capital expenditure budgets to such activities and we may not be successful securing new project awards related to these activities. See risk factor below titled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Our efforts to strategically reposition the Company to diversify our service offerings and customer base may not result in increased shareholder value.&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, an increase in gas prices could also negatively impact future investments in petrochemical and other facilities that benefit from lower gas prices. These factors could cause our revenue and margins to be depressed and limit our future growth opportunities. See Note 1 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Overview&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of the impacts of oil and gas price volatility.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The impacts on our business of the volatility of oil and gas prices and other factors that have influenced our customers&#8217; capital spending have included, or may continue to include, among other things, reduced bidding activity; suspension or termination of backlog; deterioration of customer financial condition; and unanticipated project costs and schedule delays due to supply chain disruptions, labor and material price increases, lower labor productivity, increased employee and contractor absenteeism and turnover, craft labor hiring challenges, increased safety incidents, lack of performance by subcontractors and suppliers, and contract disputes. For example, in February 2023, we received direction from our customer to suspend all activities on our offshore jackets project, and in July 2023, the customer cancelled the contract. See Note 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;New Project Awards and Backlog</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8221; in Item 7 for further discussion of the project cancellation.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We service industries that are highly competitive among service providers.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The onshore refining, petrochemical, LNG and industrial fabrication industries and the offshore oil and gas fabrication and services industry are highly competitive and influenced by events largely outside of our control. In addition, as we seek fabrication opportunities related to energy transition initiatives, including in support of our customers who are making energy transitions away from fossil fuels, opportunities related to offshore wind developments and potential future onshore support structures to provide electricity from renewable and green sources, we expect to face increased competition. Contracts for our fabrication and services projects are often awarded on a competitively bid basis, and our customers consider many factors when awarding a project. These factors include price, ability to meet the customer&#8217;s schedule, the availability and capacity of personnel, equipment and facilities, and the reputation, experience, and safety record of the contractor. We can provide no assurances that we will be able to maintain our current competitive position or that we will be able to successfully compete with other companies as the green energy transition progresses. In addition, we often compete with companies that have greater resources, which may make them more competitive for certain projects.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Competition with foreign fabricators can also be challenging as such competitors often have lower operating costs and lower wage rates, and foreign governments often use subsidies and incentives to create local jobs and impose import duties and fees on products. In addition, technological innovations have lowered transportation costs, increasing the competitiveness of foreign competitors when exporting structures from foreign locations to the GOM and Gulf Coast, which may hinder our ability to successfully secure new awards for projects destined for the GOM and Gulf Coast from foreign locations. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Competition&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 1 for further discussion of the competitive nature of our industry.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">A small number of customers may represent a significant portion of our revenue.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We derive a significant amount of our revenue from a small number of customers in any given year. For our Services Division, our services for such customers are generally subject to master services agreements, and accordingly, such customers tend to be consistent each year; however, the amount of revenue may vary between years because the level of services that we may provide depends on, among other things, the amount of that customer&#8217;s capital expenditure budget, our labor availability and our ability to meet the customer&#8217;s schedule requirements. For our Fabrication Division, our services for such customers are generally project specific, and accordingly, may account for a significant portion of our revenue in one year, but represent a smaller or even immaterial portion of our revenue in subsequent years, or vice-versa. We define significant customers as those that individually comprise 10% or more of our consolidated revenue. For 2023, we had two customers that accounted for 53% of our consolidated revenue (excluding the negative revenue charge associated with the resolution of our MPSV Litigation for our Shipyard Division), and for 2022, we had two customers that accounted for 48% of our consolidated revenue. The loss of a significant customer in any given year for any reason, including a sustained decline in that customer&#8217;s capital expenditure budget or competitive factors, could result in a substantial loss of revenue. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Customers&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1 for further discussion of our customers.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Competitive pricing common in the industries we serve could negatively impact our operating results.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have not always been successful in fully recovering our project and overhead costs or realizing a profit, even when industry conditions are favorable, due in part to the competitive environment for new project awards. While we have recently experienced an increase in bidding activity for fabrication projects and demand for our services remains high, this trend may not continue. Additionally, as it relates to our fabrication business, during periods of increased market demand, new fabrication service capacity may enter the market, which could place additional pressure on the pricing of our fabrication projects. Furthermore, during periods of declining pricing for our fabrication projects and services, we may not be able to reduce our costs accordingly, which could impact our ability to compete.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operational Risks</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our business depends on the award of new contracts and the timing and execution of those awards.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">It is difficult to predict whether or when we will be awarded new contracts due to complex bidding and selection processes, changes in existing or forecast market conditions, governmental regulations, permitting and environmental matters. In the case of our Fabrication Division, while we have seen an increase in bidding activities, we can provide no assurances that the higher level of bidding activity will continue during 2024 and beyond or that we will be successful in securing any large project awards. Our results of operations and cash flows can fluctuate materially from period to period based on our success in securing new project awards.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">11</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our short-term profitability may be affected from time to time as we balance our current capacity with expectations of future project awards and the timing of execution of new project awards. If an expected new project award is delayed or not received, or project execution is delayed subsequent to an award, we may incur costs to maintain an idle workforce and facilities, or alternatively, we may determine that our long-term interests are best served by reducing our workforce and incurring increased costs associated with termination benefits. For example, in February 2023, we received direction from our customer to suspend all activities on our offshore jackets project, and in July 2023, the customer cancelled the contract. See Note 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;New Project Awards and Backlog</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8221; in Item 7 for further discussion of the project cancellation. A reduction in our workforce could also impact our results of operations if customers are hesitant to award new contracts based upon our staffing levels or if we are unable to adequately increase our labor force and staff projects that are awarded following our workforce reductions over recent years. See the risk factor below titled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;We may be unable to employ a sufficient number of skilled personnel to execute our projects&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> for further discussion of the impacts of labor constraints on our operations.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">The nature of our contracting terms for our contracts could adversely affect our operating results.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A substantial number of our projects are performed on a fixed-price or unit-rate basis in any given year. Under fixed-price contracts, our contract price is fixed, and is generally only subject to adjustment for changes in scope by the customer. Accordingly, we retain cost savings realized on a project but are also responsible for cost overruns. Under unit-rate contracts, material items or labor tasks are assigned unit rates of measure. The unit rates of measure will generally be a reimbursable value per ton, per foot or square foot or per item installed. A typical unit-rate contract can contain hundreds to thousands of unit rates of measure. Profit margins are incorporated into the unit-rates and, similar to a fixed-price contract, we retain cost savings realized on a project but are also responsible for cost overruns. In many cases, our fixed-price and unit-rate contracts involve complex design and engineering, significant procurement of materials and equipment, and extensive project management. In addition, as projects increase or decrease in scope, the resulting changes in contract price or unit-rates could be less than the actual costs incurred associated with such changes in scope. We employ our best efforts to properly estimate the cost to complete our projects; however, our actual costs incurred could materially exceed our estimates. The revenue, costs and profit realized on a contract will often vary from the estimated amounts on which such contract was originally estimated due to the following:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">unanticipated changes in, or failure to properly estimate the costs of, engineering, materials, components, equipment, labor or subcontractors;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">failure to properly estimate the impact of engineering delays or errors on the construction of a project, including productivity, schedule and rework; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">difficulties in engaging third-party subcontractors, equipment manufacturers or materials suppliers, or failures by such third-parties to perform, resulting in project delays and additional costs;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">late delivery of materials by vendors or the inability of subcontractors to deliver contracted services on schedule or at the agreed upon price;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">increased costs due to poor project execution or productivity and/or weather conditions;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">unanticipated costs or claims, including costs for project modifications, delays, errors or changes in specifications or designs, regulatory changes or contract termination;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">unrecoverable costs associated with customer changes in scope and schedule;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">payment of liquidated damages due to a failure to meet contractual delivery dates;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">changes in labor conditions, including the availability, wage and productivity of labor;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">termination, temporary suspension or significant reduction in scope of our projects by our customers; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">unanticipated technical problems with the structures, equipment or systems we supply; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">unforeseen costs or delays related to equipment that is not operable or does not adequately function; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">under-utilization of our facilities and an idle labor force.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">These variations and risks are inherent within our industry and may result in revenue and profit that differ from amounts originally estimated or result in losses on projects. Depending on the size and duration of a project, variations from estimated contract performance can have a significant impact on our operating results. In addition, substantially all of our contracts require us to continue work in accordance with the contractually agreed schedule, and thus, continue to incur expenses for labor and materials, notwithstanding the occurrence of a disagreement with a customer over changes in scope, increased pricing and/or unresolved change orders or claims.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We could be exposed to potentially significant liability and costs due to limits on our insurance coverage and losses for which we do not have third-party insurance coverage.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The fabrication of structures and the services we provide involves operating hazards that can cause accidents, resulting in personal injury or loss of life, severe damage to and destruction of property and equipment, and suspension of operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, due to the proximity to the GOM, our facilities are subject to the possibility of physical damage caused by hurricanes or flooding. For example, in 2021, Hurricane Ida damaged our buildings, equipment and vessels under construction and in our possession, at our Houma Facilities, which resulted in repair and replacement costs in excess of our deductible amounts. See the risk factor below titled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;We are susceptible to adverse weather conditions in our market areas&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">for further discussion of the impacts of adverse weather conditions to our operations.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Further, our employees may engage in certain activities that are covered by the provisions of the Jones Act or USL&amp;H, including services conducted on offshore platforms, services performed on barges owned or chartered by us, and fabrication activities that are performed at our Houma Facilities. These laws make the liability limits established under state workers&#8217; compensation laws inapplicable to these employees and, instead, permit them or their representatives to pursue actions against us for damages or job-related injuries, with generally no limitations on our potential liability. Our ownership and operation of vessels can also give rise to large and varied liability risks, such as risks of collisions with other vessels or structures, sinking, fires and other marine casualties, which can result in significant claims for damages against both us and third parties. Litigation arising from any such occurrences may result in our being named as a defendant in lawsuits asserting large claims.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We may be exposed to future losses through our use of deductibles and self-insured retentions for our exposures related to property and equipment damage, builder&#8217;s risk, third-party liability and workers&#8217; compensation and USL&amp;H claims. For any such exposures, we will rely on existing liquidity and cash flows to meet obligations that would arise from an incident or series of events. The occurrence of a significant incident, series of events, or unforeseen liability for which we are self-insured or not fully insured, or for which insurance recovery is significantly delayed, could have a material adverse effect on our results of operations or financial condition.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">There can be no assurance that we will be able to maintain adequate insurance at rates we consider reasonable or that our insurance coverages will be adequate to cover claims that may arise. Changes in the insurance industry have generally led to higher insurance costs and decreased availability of coverage. The availability of insurance that covers risks we typically insure against may decrease, and the insurance that we are able to obtain may have higher deductibles, higher premiums and more restrictive policy terms. In connection with our insurance coverage renewal for our property and equipment during 2023, we determined that the benefits of maintaining insurance coverage for our property and equipment were limited due to high premium costs and deductibles and increased coverage limitations. Accordingly, we did not renew all of our property and equipment coverage and are now generally self-insured for exposures resulting from any future damage to our property and equipment. To the extent we are self-insured, reserves are recorded based upon our estimates, with input from legal and insurance advisors. Changes in assumptions, as well as changes in actual experience, could cause these estimates to change. See Note 7 for further discussion of our insurance coverages.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our backlog is subject to change as a result of delay, suspension, termination or an increase or decrease in scope for projects currently in backlog.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The revenue projected in our backlog may not be realized or, if realized, may not be profitable. Projects included in our backlog are generally subject to delay, suspension, termination, or an increase or decrease in scope at the option of the customer. Depending on the size of the project, the delay, suspension, termination, increase or decrease in scope of any project could significantly impact our backlog and change the expected amount and timing of revenue recognized. For example, in February 2023, we received direction from our customer to suspend all activities on our offshore jackets project, and in July 2023, the customer cancelled the contract. In addition, whether a project proceeds as scheduled, is suspended or terminated, it is possible that the customer may default by failing to pay amounts owed to us, including reimbursement to us for third-party costs we have committed or incurred on the customer&#8217;s behalf. Accordingly, our backlog as of any date is an uncertain indicator of future results of operations. See Note 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;New Project Awards and Backlog&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of our new project awards and backlog and the project cancellation.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our project execution and operations may be negatively affected if our equipment is not operable or does not adequately function.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our project execution and operations are heavily dependent on the use of owned and leased equipment. Accordingly, equipment that is not operable or that does not adequately function could negatively impact our project execution and operations. As our equipment ages, the costs associated with maintaining such equipment typically increases, and in some instances, such equipment may require full replacement. In recent years we have not made significant investments in new equipment or the refurbishment of owned equipment, and accordingly, future repair or replacement costs could be significantly higher than those recently experienced.  Further, equipment that becomes non-operable or that does not properly function may result in the temporary suspension of our operations until the equipment is repaired or replaced, and such impacts may be compounded by limitations on the availability and timely receipt of replacement equipment or component parts. See the risk factor below titled &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We depend on third parties to provide services and supply raw materials, equipment and components necessary to perform our contractual obligations, and any increase in the price or constraints on the supply of such raw materials, equipment or components could negatively affect our profitability</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8221; for discussion of the availability of equipment and component parts.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We depend on third parties to provide services and supply raw materials, equipment and components necessary to perform our contractual obligations, and any increase in the price or constraints on the supply of such raw materials, equipment or components could negatively affect our profitability.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The price and availability of the raw materials required to execute our projects are subject to volatility and disruptions caused by global economic factors that are beyond our control, including, but not limited to, supply chain disruptions, labor shortages, wage pressures, rising inflation and potential economic slowdown or recession, increases in fuel and energy costs, the impact of natural disasters, public health crises, geopolitical conflicts, foreign currency exchange rate fluctuations, and other matters that have or could impact the global economy.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We rely on third parties to provide raw materials, equipment and components, and depend upon subcontractors for a variety of reasons, including performing work we would otherwise perform with our employees but are unable to do so as a result of scheduling demands, performing certain aspects of a contract more efficiently considering the conditions of the contract, and performing certain services that we are unable to do or which we believe can be performed at a lower cost by subcontractors. During 2023, supplier and subcontractor delays negatively affected our completion of the Ferry Projects, which prolonged the wind down of our Shipyard Division operations and resulted in further losses on the projects. See Note 2 for further discussion of the impacts of supplier and subcontractor delays on our projects.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Ensuring continuity of supply of such raw materials to our operations is critical to our business. We also rely on the availability of equipment and components for key equipment from our suppliers, which may be impacted by competition demands as well as the availability of input materials in the creation of such equipment and components for key equipment. Failure of suppliers and subcontractors to deliver raw materials, equipment and components and provide services, or perform under their contracts on a timely basis, or at all, has had and may continue to have an adverse impact on our operations. The impact of global macroeconomics on our suppliers and subcontractors has resulted in, and may continue to result in, scheduling delays and higher costs, including as a result of inflation, for subcontracted services and raw materials, equipment and components. Further, there continue to be global shipping and logistics challenges, which began during the COVID-19 pandemic.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A supplier&#8217;s failure to supply raw materials, equipment or components in a timely manner or to meet our quality, quantity or cost requirements or technical specifications, or our inability to obtain alternative sources of raw materials, equipment or components on a timely basis or on terms acceptable to us, could adversely affect our operations. The inability of our suppliers or subcontractors to perform could result in the need to transition to alternative suppliers or subcontractors, which could result in significant incremental costs and delay, or the need for us to provide other supplemental means to support our existing suppliers and subcontractors. Disruptions and performance problems caused by our suppliers and subcontractors, or a misalignment between our contractual obligations to our customers and our agreements with our subcontractors and suppliers, could have an adverse effect on our ability to meet our commitments to customers.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We may be protected from increases in material costs through cost escalation provisions in some of our contracts. However, the difference between our actual material costs and these escalation provisions may expose us to cost uncertainty. In addition, we may experience significant delays in deliveries of key raw materials, which may occur as a result of availability or price, including higher costs due to inflation. During 2023, delays and shortages of raw materials, equipment and components negatively affected our completion of the Ferry Projects, which prolonged the wind down of our Shipyard Division operations and resulted in further losses on the projects. Delays and shortages of raw materials, equipment and components could continue in 2024, which may have an impact on other projects. See Note 2 for further discussion of the impacts of material delays on our projects.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We may be unable to successfully defend against claims made against us by customers, subcontractors or other parties, or recover claims made by us against customers, subcontractors or other parties.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are, and may in the future become, involved in various legal proceedings and subject to other contingencies that have arisen or may arise in the ordinary course of our business. Our projects are generally complex, and we may encounter difficulties in design, engineering, schedule changes and other factors, some of which may be beyond our control, that affect our ability to complete projects in accordance with contractual delivery dates or to otherwise meet contractual performance obligations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We may bring claims against customers for additional costs incurred by us resulting from customer-caused delays or changes in project scope initiated by our customers that are not part of the original contract scope. In addition, claims may be brought against us by customers relating to, among other things, alleged defective or incomplete work, breaches of warranty and/or late completion of work. We may also have disputes with our subcontractors and other parties, related to, among other things, indemnification obligations. These claims may be subject to lengthy and/or expensive litigation or arbitration proceedings and may require us to invest significant working capital in projects to cover cost increases pending resolution of the claims. The outcome of litigation is inherently uncertain and adverse developments or outcomes can result in significant monetary damages, penalties, other sanctions or injunctive relief against us, limitations on our property rights, or regulatory interpretations that increase our operating costs. A material adverse outcome in any uninsured litigation could result in our liabilities exceeding our assets. See Note 2 for discussion of our ongoing customer disputes.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Regardless of the merit of particular claims, defending against litigation or responding to investigations can be expensive, time-consuming, disruptive to our operations and distracting to management. In recognition of these considerations, we may enter into agreements or other arrangements to settle litigation and resolve such challenges. There can be no assurance such agreements can be obtained on acceptable terms or that litigation will not occur or that we will not incur charges resulting from any such agreements or settlements.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Systems and information technology interruption or failure and data security breaches could adversely impact our ability to operate or expose us to significant financial losses and reputational harm.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We rely heavily on computer information, communications technology and related systems in order to properly operate our business. From time to time, we experience occasional system interruptions and delays. In the event we are unable to deploy software and hardware, effectively upgrade our systems and network infrastructure, and take other steps to maintain or improve the efficiency and efficacy of our systems, the operation of such systems could be interrupted or result in the loss, corruption or release of data. In addition, our computer and communications systems and operations could be damaged or interrupted by natural disasters, force majeure events, telecommunications failures, power loss, acts of war or terrorism, physical or electronic security breaches, intentional or inadvertent user misuse or error, or similar events or disruptions. Any of these or other events could cause interruptions, delays, loss of critical and/or sensitive data or similar effects.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, we face the threat to our computer systems of unauthorized access, computer hackers, computer viruses, malicious code, organized cyber-attacks and other security problems and system disruptions. If we were to be subject to a cyber incident or attack, it could result in the disclosure of confidential or proprietary customer information, theft, loss, corruption or misappropriation of intellectual property, damage to our reputation with our customers and the market, failure to meet customer requirements or customer dissatisfaction, theft, exposure to litigation, damage to equipment and other financial costs and losses. We rely on industry accepted security measures and technology to securely maintain all confidential and proprietary information on our computer systems, but these systems are still vulnerable to such threats. In addition, as cybersecurity threats continue to evolve, we may be required to expend significant resources to protect against the threat of these system disruptions and security breaches or to alleviate problems caused by these disruptions and breaches. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Cybersecurity&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1C for further discussion of our cybersecurity governance, risk management and strategy.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We may conduct a portion of our operations through joint ventures and strategic alliances over which we may have limited control, and our partners in such arrangements may not perform.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We may conduct a portion of our operations through joint ventures and strategic alliances with business partners. In any such arrangement, differences in views among the participants may result in delayed decisions or in failures to reach agreement on certain matters, or to do so in a timely manner. In any joint venture or strategic alliance in which we hold a non-controlling interest, we may have limited control over many decisions relating to joint venture operations and internal controls relating to operations. We also cannot control the actions of our partners, including any non-performance, default, or bankruptcy of our partners, and we would likely share liability or have joint and/or several liability with our partners for joint venture matters.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Major public health crises</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">may have a negative impact on our operations.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pandemics, epidemics, widespread illness or other health crises, that interfere with the ability of our employees, suppliers, customers, financing sources or others to conduct business have and could adversely affect the global economy and our operations and business, including our backlog and bidding activities. See the risk factors above titled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Our revenue and profitability continues to be dependent on the offshore oil and gas industry, which is a historically cyclical industry&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;We depend on third parties to provide services and supply raw materials, equipment and components necessary to perform our contractual obligations, and any increase in the price or constraints on the supply of such raw materials, equipment or components could negatively affect our profitability&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">for further discussion of the impacts of major public health crises on our operations.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our business and results of operations could be adversely affected if significant portions of our workforce are unable to work effectively, including because of illness, quarantines, government actions or other restrictions. For example, our operations (as well as the operations of our customers, subcontractors and other counterparties) were previously negatively impacted by the physical distancing, quarantine and isolation measures recommended by national, state and local authorities on large portions of the population, and mandatory business closures that were enacted in an attempt to control the spread of COVID-19, and which could be reenacted in response to any future major public health crisis (including any new and emerging strains and variants of COVID-19).</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Financial Risks</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We may need additional capital in the future for working capital, capital expenditures, contract commitments and/or acquisitions, and we may not be able to obtain or raise such capital (whether debt or equity) or do so on favorable terms, which would impair our ability to operate our business or execute our strategy.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our primary sources of liquidity are our cash, cash equivalents and scheduled maturities of short-term investments. If such amounts and cash flows from operating activities are not sufficient to fund our working capital requirements, capital expenditures, contract commitments and obligations, and/or acquisition opportunities, we would be required to reduce our capital expenditures and/or forego certain contracts and/or acquisition opportunities, or we would be required to fund such needs through debt or equity issuances or through other financing alternatives, including the sale of assets. See risk factor below titled &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We may not be able to obtain letters of credit or surety bonds if and when needed on favorable terms, if at all, and we may not have sufficient liquidity to satisfy any indemnification obligations owed to a surety should the surety have to make payments under the performance bonds to the beneficiary thereof</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8221; for further discussion of the impacts that potential indemnification obligations may have on our liquidity.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We may be required to make capital investments in our existing or new facilities and increase our working capital to support our backlog or new project awards. The capital outlays and working capital required by us to execute such projects could exceed our existing cash, cash equivalents, scheduled maturities of short-term investments and cash flows from operating activities, and we may not be able to obtain debt financing or credit facilities to fund any such capital investment or working capital requirements.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our ability to successfully obtain debt financing or credit facilities or raise equity capital in the future will depend in part upon prevailing capital market conditions, as well as conditions in our business and our operating results, and those factors may affect our efforts to obtain additional capital on terms that are satisfactory to us. There are a number of potential negative consequences for the energy sector that may result if oil and gas prices become volatile or decline or if oil and gas companies continue to de-prioritize investments in exploration, development and production, including the continued or worsening of outflow of credit and capital from the energy sector and/or energy focused companies and further efforts by lenders to reduce their exposure to the energy sector, including the imposition of increased lending standards for the energy sector, higher borrowing costs and collateral requirements, or a refusal to extend new credit or amend existing credit facilities in the energy sector. These potential negative consequences may be exacerbated by the pressure exerted on financial institutions by regulatory agencies to respond quickly and decisively to credit risk that develops in distressed industries. All of these factors may complicate our ability to achieve a favorable outcome in obtaining debt financing or credit facilities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In order to secure debt financing or credit facilities with borrowing capacity, if available, we may be required to provide significant collateral, pay high interest rates and otherwise agree to restrictive terms. Collateral requirements and higher borrowing costs may limit our long- and short-term financial flexibility, and any failure to secure debt financing or credit facilities on terms that are acceptable to us could jeopardize our ability to fund, among other things, capital expenditures and general working capital needs or meet our other financial commitments. For example, in connection with the resolution of our MPSV Litigation on October 4, 2023, we entered into a promissory note (&#8220;Note Agreement&#8221;) and amended the multiple indebtedness mortgage (&#8220;Mortgage Agreement&#8221;) with one of our Sureties to secure our obligations under the Note Agreement and under our general indemnity agreement with such Surety associated with its outstanding surety bonds for our forty-vehicle ferry projects. See Note 4 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Liquidity and Capital Resources&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of the Note Agreement and Mortgage Agreement.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">If adequate capital is not available, or not available on beneficial terms, we may not be able to make future investments, take advantage of acquisitions or other investment opportunities, or respond to competitive challenges. This could limit our ability to bid on new project opportunities, thereby limiting our potential growth and profitability.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We may not be able to generate sufficient cash flow to meet our obligations.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our ability to fund operations depends on our ability to generate future cash flows from operations. This, to a large extent, is subject to conditions in the oil and gas industry, including commodity prices, demand for our services and the prices we are able to charge for our services, general economic and financial conditions, competition in the markets in which we operate, the impact of legislative and regulatory actions on how we conduct our business and other factors, all of which are beyond our control. During 2022, we experienced negative cash flows from operations, which could occur again if global macroeconomic conditions were to worsen or oil and gas prices decline significantly resulting in delayed or suspended capital expenditures by customers, or if we were to experience losses on our projects. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Liquidity and Capital Resources&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of our business outlook.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On April 17, 2020, we entered into an unsecured loan in the aggregate amount of $10.0 million (&#8220;PPP Loan&#8221;) with Whitney Bank pursuant to the Paycheck Protection Program under the Coronavirus Aid, Relief, and Economic Security Act, as amended. An aggregate principal amount of $8.9 million of the PPP Loan was forgiven and we repaid the remaining outstanding balance of $1.1 million in July 2021. Because the amount borrowed exceeded $2.0 million, we are required by the Small Business Administration (&#8220;SBA&#8221;) to retain all records relating to the PPP Loan for six years from the date the loan was forgiven and permit authorized representatives of the SBA to access such records upon request. While we believe we are a qualifying business and have met the eligibility requirements of the PPP Loan, and believe we have used the loan proceeds only for expenses which may be paid using proceeds from the PPP Loan, we can provide no assurances that any potential SBA review or audit will verify the amount forgiven, in whole or in part. If we are later determined to have been ineligible to receive the PPP Loan or loan forgiveness, we may be subject to significant penalties, including significant civil, criminal and administrative penalties, and we could be required to repay the PPP Loan in its entirety, which could negatively impact our liquidity, and have an adverse impact on our reputation.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We may not be able to obtain letters of credit or surety bonds if and when needed on favorable terms, if at all, and we may not have sufficient liquidity to satisfy any indemnification obligations owed to a surety should the surety have to make payments under the performance bonds to the beneficiary thereof.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain of our projects require that we issue letters of credit or surety bonds to our customers in order to secure advance payments or guarantee performance under our contracts. Our LC Facility currently provides for letters of credit, which are subject to cash securitization. With respect to letters of credit under our LC Facility, any advance in the event of non-performance under a contract would become a direct obligation and reduction in our cash. With respect to surety bonds, payments by the Surety pursuant to a bond in the event of non-performance are subject to reimbursement to the Surety by us under a general indemnity agreement. Such indemnification obligations may include the face amount of the surety bond, or portions thereof, as well as other reimbursable items such as interest and certain investigative expenses and legal fees of the Surety. Such indemnification obligations would require us to use our cash, cash equivalents or short-term investments, and we may not have sufficient liquidity to satisfy such indemnification obligations. When a contract is complete, the contingent obligation terminates, and letters of credit or surety bonds are returned. It has been increasingly difficult to obtain letters of credit and bonding capacity and identify potential financing sources, due to, among other things, losses from our operations in recent years, including charges on projects within our Shipyard Division and discontinued operations. We can provide no assurances that necessary letters of credit or bonding capacity will be available to support future project requirements or that we will have sufficient liquidity to satisfy any future indemnification obligations. See Note 4 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Liquidity and Capital Resources&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of our LC Facility and surety bonds.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We are exposed to the credit risks of our customers, including nonpayment and nonperformance by our customers.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The oil and gas industry continues to face significant challenges due to the prolonged period of depressed and/or volatile oil and gas prices from 2014 to 2018 and subsequent volatility in oil and gas prices. The concentration of our customers in the oil and gas industry may impact our overall exposure to credit risk as customers may be similarly affected by negative changes in industry conditions. We believe certain of our customers finance their activities through cash flows from operations and debt or equity financing. Many of these customers have faced significant challenges since 2008 due to the volatility in the price of oil and gas, including decreased cash flows, reductions in borrowing capacity, the inability to access capital or credit markets, and reductions in liquidity. While the prices of oil and gas have somewhat stabilized recently, the duration of such stability is uncertain and difficult to predict. If the price of oil and gas significantly declined or the returns on capital investments by our customers are insufficient, our operations could be impacted due to nonpayment or nonperformance by our customers. We perform ongoing credit evaluations of our customers and do not generally require collateral in support of our trade receivables. While we maintain reserves for potential credit losses, we can provide no assurances that such reserves will be sufficient to cover uncollectible receivable amounts or that our losses from such receivables will be consistent with our expectations. See Note 2 for further discussion of our reserves for potential credit losses.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Furthermore, some of our customers may be highly leveraged and subject to their own operating and regulatory risks, which increases the risk that they may default on their obligations to us. To the extent one or more of our key customers is in financial distress or commences bankruptcy proceedings, contracts with, or obligations from, these customers may be subject to renegotiation or rejection under applicable provisions of the U.S. Bankruptcy Code and similar international laws.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our method of accounting for revenue using the percentage-of-completion method could have a negative impact on our results of operations.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue and gross profit for contracts accounted for using the percentage-of-completion method can be significantly affected by changes in estimated cost to complete such contracts. Significant estimates impacting the cost to complete a contract include: forecast costs of engineering, materials, equipment and subcontracts; forecast costs of labor and labor productivity; schedule durations, including subcontractor and supplier progress; contract disputes, including claims; achievement of contractual performance requirements; and contingency, among others. The cumulative impact of revisions in total cost estimates during the progress of work is reflected in the period in which these changes become known, including, to the extent required, the reversal of profit recognized in prior periods and the recognition of losses expected to be incurred on contracts. Due to the various estimates inherent in our contract accounting, actual results could differ from those estimates, which could result in material changes to our Financial Statements and related disclosures.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Further, our time and materials (&#8220;T&amp;M&#8221;), cost-reimbursable and unit-rate contracts generally have more variability in the scope of work than fixed-price contracts and provide our customers with greater influence over the timing of when we perform our work. Accordingly, such contracts often result in less predictability with respect to the timing of when our revenue is recognized. See Notes 1 and 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Critical Accounting Policies&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 7 for further discussion of our contracting and revenue recognition.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Disruptions at the regional bank in which we deposit our funds could have an adverse impact on our business and financial condition.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We hold substantially all of our cash deposits with a single regional bank and we rely on our deposits with the bank to fund our operations. Any disruption in the bank&#8217;s ability to process payments or maintain our deposits would significantly disrupt our business and could materially affect our operations. In addition, we currently have cash and cash equivalents deposited in excess of federally insured levels with the bank, and if the bank were to fail, we could lose our deposits in excess of insured levels. During 2023, federal governmental agencies took action to protect uninsured deposits at certain U.S. banks; however, if the regional bank in which we hold funds for operations were to fail, we cannot provide any assurances that such governmental agencies will take similar actions.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Workforce Risks</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We may be unable to employ a sufficient number of skilled personnel to execute our projects.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our productivity and profitability are significantly dependent upon our ability to attract and retain skilled construction supervision and craft labor, primarily welders, pipe fitters and equipment operators. The fabrication and services industries have lost a significant number of experienced professionals over the years due to the aging of the workforce and the cyclical nature of the oil and gas industry, which is attributable, among other reasons, to the volatility of oil and gas prices and a more generalized concern about the overall future prospects of the oil and gas industry. See risk factor above titled &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our revenue and profitability continues to be dependent on the offshore oil and gas industry, which is a historically cyclical industry.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8221; Many companies, including us, have reduced their skilled workforce in response to decreases in utilization. However, with the current oil and gas prices, we continue to experience an increase in bidding activity. The current competitive labor market may make it more difficult to increase our labor force to desirable levels if we realize a significant increase in our new project awards or backlog. We cannot be certain that we will be able to attract and retain the qualified labor force required to meet current or future needs at a reasonable cost, or at all.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">With the recent increased demand for construction and services labor, the supply of skilled labor has become increasingly limited resulting in higher costs of labor, including increases in wage rates and the costs of recruiting or training to attract and retain qualified personnel, which could have a materially adverse impact on our business, financial condition and results of operations. Further, due to the higher demand for our services, if we cannot employ the necessary skilled labor to execute our backlog, we have had, and may have to continue, to increase our use of contract labor, which may have a higher cost and lower levels of productivity.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">If we are unable to hire and retain necessary skilled labor, we may be unable to secure new project awards, execute our backlog and expand our operations. Further, any shortage of skilled labor or ongoing challenges hiring and retaining skilled labor could negatively affect the quality, safety, timeliness and profitability of our projects.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">18</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our success is dependent on key personnel.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our success is dependent upon the abilities of our executives, management, and other key employees who have significant and relevant industry experience. Our success also depends on our ability to attract, retain and motivate highly-skilled personnel in various areas, including construction supervision, project management, procurement, project controls and finance. The loss of one or more key personnel or our inability to attract, retain and motivate necessary personnel could impact our operations.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">If we continue to have insufficient utilization levels for our facilities or personnel, our results of operations and financial condition would be adversely affected.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In recent years we have experienced an under-utilization of our facilities and personnel and have not fully recovered our overhead costs, due in part to the high fixed costs of our operations. This has resulted in losses from our operations in certain periods. If current or future facility and personnel capacity fails to match current or future customer demands for our services, our facilities would continue to be under-utilized, which could result in less profitable operations or ongoing losses from our operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our employees and subcontractors work on projects that are inherently dangerous. If we fail to maintain safe work sites, we can be exposed to significant financial losses and reputational harm.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We work on projects with large, mechanized equipment, moving vehicles, and dangerous processes, which can place our employees and subcontractors in challenging environments. We maintain a safety assurance program designed to ensure the safety of our employees and subcontractors and to ensure that we remain in compliance with all applicable federal and state mandated safety regulations. If our safety assurance program fails, our employees, subcontractors and others may become injured, disabled or lose their lives, and our projects may be delayed, causing exposure to litigation or investigations by regulators.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unsafe conditions at project work sites also have the potential to increase employee turnover, increase project costs and increase our operating costs. In addition, our customers often require that we meet certain safety criteria to be eligible to bid contracts. Our failure to maintain adequate safety standards could result in lost project awards and customers or preclude us from tendering future bids.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Strategic Risks</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our efforts to strategically reposition the Company to diversify our service offerings and customer base may not result in increased shareholder value.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our operations have historically been focused on fabrication and services for the offshore oil and gas industry. We have begun to diversify our business through the pursuit of onshore fabrication opportunities and sustainable energy and other projects that are not related to our traditional offshore oil and gas markets. While the Shipyard Transaction resulted in a less diversified business portfolio such that we have a greater dependency on the performance of our remaining operations for our financial results, during 2021, we expanded our offshore services offerings and further diversified our offshore customer base through the acquisition of a services and industrial staffing business. In addition, during 2022, we made capital and other investments to expand our offshore services offering to include welding enclosures, which provides a safe environment for welding, cutting and burning without the need to shut down operations. Entry into, or further development of, new lines of business may expose us to risks that are different from those we have experienced historically. We may not be able to effectively manage these additional risks or implement successful business strategies and our cash flows derived from any new lines of business may not be consistent with our expectations or be insufficient to fully recover our investment. Additionally, our competitors in these expanded lines of business may possess greater operational knowledge, resources and experience than we do. These diversification initiatives may not increase shareholder value and could result in a reduction in shareholder value depending upon our required capital investment and success.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Any future rationalization of under-utilized assets or facilities to improve our asset or facility utilization could result in future losses or impairments and may not produce our desired results.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We may take actions to relocate assets, consolidate operations and rationalize under-utilized assets and facilities to improve our utilization. Such actions may include the sale of assets or the closure or consolidation of one or more of our facilities and the termination of facility employees. During 2023, we further consolidated our fabrication operations within our Houma Facilities, and in February 2024, we sold certain property of our Fabrication Division that was part of our Houma Facilities that was no longer deemed necessary for such operations. The property sold was classified as an asset held for sale (&#8220;Houma AHFS&#8221;) on our Balance Sheet at December 31, 2023. Further, during 2022, we sold a purchase option entered into in connection with a previous acquisition. A future sale of assets or facility closure or consolidation could result in impairments of facility assets and other restructuring or exits costs, including retention, severance or other costs associated with terminated personnel. Further, we can provide no assurances that any asset sales or facility closure or consolidation will result in an improvement in our overall utilization or that the costs of doing so will not exceed the benefits expected to be gained from the asset sales or closure or consolidation of a facility. In addition, any decisions made regarding our deployment or use of any sales proceeds we receive involves risks and uncertainties. As a result, our decisions with respect to such proceeds may not lead to increased long-term shareholder value. See Note 3 for further discussion of our Houma AHFS and the sale of the purchase option.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We cannot guarantee that our share repurchase program will enhance shareholder value, and share repurchases could affect the price of our common stock.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In December 2023, our Board of Directors (&#8220;Board&#8221;) authorized the repurchase of up to $5.0 million of our outstanding common stock from time to time through a share repurchase program (&#8220;Share Repurchase Program&#8221;). Under our Share Repurchase Program, we may make repurchases of stock through transactions in the open market, in privately negotiated transactions or by other means in accordance with applicable laws. The timing and amount of any share repurchases will be at the discretion of management and will depend on a variety of factors, including capital availability, our financial results, cash requirements, business, market, industry and global economic conditions, changes in laws, contractual restrictions and other factors deemed relevant by management. The Share Repurchase Program expires on December 15, 2024, does not obligate us to repurchase any shares and may be modified, increased, suspended or terminated at any time at the discretion of the Board. A suspension or termination of our share repurchases could have a negative effect on the price of our common stock. In addition, as part of the Inflation Reduction Act of 2022, the U.S. implemented a 1% excise tax on the value of certain stock repurchases by publicly traded companies. This tax could increase the costs to us of any share repurchases.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">There are a number of ways in which the Share Repurchase Program could fail to result in enhanced shareholder value. For example, any failure to repurchase stock after we have announced our intention to do so may negatively impact our stock price. The existence of the share repurchase program could also cause our stock price to trade higher than it otherwise would and could potentially reduce the market liquidity for our stock. The market price of our common stock could decline below the levels at which we repurchased shares and short-term stock price fluctuations could reduce the effectiveness of the program.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Additionally, repurchasing our common stock will reduce the amount of cash and cash equivalents we have available to fund working capital, capital expenditures, capital preserving investments, strategic acquisitions or business opportunities, and other general corporate purposes, and there are no guarantees that the share repurchase program will result in increased shareholder value. See Note 8 and Item 5 for further discussion of our Share Repurchase Program.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Legal, Regulatory and Environmental Risks</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Any changes in U.S. trade policies and retaliatory responses from other countries may significantly increase the costs or limit supplies of materials and products used in our fabrication projects.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In the past few years, the federal government has imposed new or increased tariffs or duties on an array of imported materials and products used in connection with our fabrication business, which raised our costs for these items (or products made with them), and threatened to impose further tariffs, duties and/or trade restrictions on imports. Foreign governments, including China and Canada, and trading blocs, such as the European Union, responded by imposing or increasing tariffs, duties and/or trade restrictions on U.S. goods. For example, in response to Russia&#8217;s invasion of Ukraine, the U.S. and other countries have imposed sanctions and/or other restrictive actions against Russia. These developments caused global economic disruptions, including increases in energy prices and the related European energy crisis. Any trading conflicts and related escalating governmental actions that result in additional tariffs, duties and/or trade restrictions could increase our costs, cause disruptions or shortages in our supply chains and/or negatively impact the U.S., regional or local economies.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">We are susceptible to adverse weather conditions in our market areas.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our operations may be subject to seasonal variations due to weather conditions and daylight hours, and to the extent climate change results in an increase in extreme adverse weather conditions, the likelihood of a negative impact on our operations may increase. Although we have large covered fabrication facilities, a significant amount of our fabrication activities continues to take place outdoors, and accordingly, the number of labor hours worked may decline during the winter months due to unfavorable weather conditions and a decrease in daylight hours. In addition, the seasonality of oil and gas industry activity in the GOM also affects our operations. Our offshore oil and gas customers often schedule the completion of their projects during the summer months in order to take advantage of more favorable weather during such months. Further, rainy weather, tropical storms, hurricanes and other storms prevalent in the GOM and along the Gulf Coast may also affect our operations. For example, in 2021, we experienced damage to our Houma Facilities due to Hurricane Ida, which made landfall as high-end Category 4 hurricane. Beyond financial and regulatory impacts, climate change poses potential physical risks. Scientific studies forecast that these risks include increases in sea levels, stresses on water supply, rising average temperatures and other changes in weather conditions, such as increases in precipitation and extreme weather events, such as floods, heat waves, hurricanes and other tropical storms and cyclones. The projected physical effects of climate change have the potential to directly affect the operations we conduct for customers and result in increased costs related to our operations. However, because the nature and timing of changes in extreme weather events (such as increased frequency, duration, and severity) are uncertain, it is not possible for us to estimate reliably the future financial risk to our operations caused by these potential physical risks. The impact of severe weather conditions or natural disasters has included and may continue to include the disruption of our workforce; curtailment of services; weather-related damage to our facilities and equipment for which we are generally self-insured, including impacts from infrastructure challenges in the surrounding areas, resulting in suspension of operations; inability to deliver equipment, personnel and products to project sites in accordance with contract schedules; and loss of productivity. Our suppliers and subcontractors are also subject to severe weather and natural or environmental disasters that have in the past and could in the future affect their ability to deliver products or services or otherwise perform under their contracts. Furthermore, our customers&#8217; operations have been and in the future may be materially and adversely affected by severe weather and seasonal weather conditions, resulting in reduced demand for our services. See Note 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Overview&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">in Item 7 for further discussion of the impacts of adverse weather conditions to our operations and the risk factor above titled </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;We could be exposed to potentially significant liability and costs due to limits on our insurance coverage and losses for which we do not have third-party insurance coverage</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.&#8221;</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">The nature of the industries that we serve subjects us to compliance with regulatory and environmental laws.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our operations and properties are subject to a wide variety of existing foreign, federal, state and local laws and other regulations. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Government and Environmental Regulation&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1 for further discussion. Compliance with many of these laws is becoming increasingly complex, stringent and expensive. These laws may impose &#8220;strict liability&#8221; for damages to natural resources or threats to public health and safety, rendering a party liable for the environmental damage without regard to its negligence or fault. Certain environmental laws provide for strict, joint and several liability for remediation of spills and other releases of hazardous substances, as well as damage to natural resources. In addition, we could be subject to claims alleging personal injury or property damage as a result of alleged exposure to hazardous substances. Such laws and regulations may also expose us to liability for the conduct of others or conditions caused by others, or acts for which we were in compliance with applicable laws at the time such acts were performed. To date, compliance with such laws has not resulted in a material adverse effect on our operations. However, we cannot predict when and whether any new or additional regulations may become effective, such as the regulatory response to climate change, and what their effect will be on us or our customers.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The demand for our services may be impacted by the regulatory response to climate change. Due to concern over the risk of climate change, several countries have adopted, or are considering the adoption of, regulatory frameworks to reduce the emission of carbon dioxide, methane and other gases (greenhouse gas emissions). These regulations include adoption of cap and trade regimes, carbon taxes, restrictive permitting, increased efficiency standards, and incentives or mandates for renewable energy. For example, the Inflation Reduction Act of 2022 imposes a federal fee on the emission of greenhouse gases. Existing and future regulatory response to climate change may potentially result in delays or prevent customers&#8217; projects from going forward and could adversely affect demand for the oil and natural gas that some of our customers produce, thereby potentially limiting demand for our services. The demand for our services is also affected by changing taxes, price controls and other laws and regulations related to the oil and gas, chemicals, commodities and alternative energy industries. We may not be able to pass any resulting cost increases on to our customers.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Offshore construction and drilling in certain areas is opposed by many environmental groups and, in certain areas, has been restricted. To the extent laws are enacted or other governmental actions are taken that prohibit or restrict offshore construction and drilling or impose environmental protection requirements that result in increased costs to the oil and gas industry in general and the offshore construction industry, our business and prospects could be adversely affected. We cannot determine to what extent future operations and results of operations may be affected by new legislation, new regulations or changes in existing regulations.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">21</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Actions of activist shareholders could create uncertainty about our future strategic direction, be costly and divert the attention of our management and board. In addition, some institutional investors may be discouraged from investing in the industries that we service.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In recent years, activist shareholders have placed increasing pressure on publicly-traded companies to effect changes to corporate governance practices, executive compensation practices or social and environmental practices, or to undertake certain corporate actions or reorganizations. Responding to challenges from activist shareholders, such as proxy contests, media campaigns or other public or private means, could be costly and time consuming and could have an adverse effect on our reputation and divert the attention and resources of management and our board, which could have an adverse effect on our business and operational results. Additionally, shareholder activism could create uncertainty about our leadership or our future strategic direction, resulting in loss of future business opportunities, which could adversely affect our business, future operations, profitability and our ability to attract and retain qualified personnel. As of December 31, 2023, based on our review of public filings with the SEC, we believe over one-third of our stock is held by a combination of institutional investors, pooled investment funds, and certain other investors with a history of shareholder activism. One such investor has a Schedule 13D on file with the SEC that reserves that investor&#8217;s rights to pursue corporate governance changes, board structure changes, changes to capitalization, potential business combinations or dispositions involving the Company or certain of our businesses, or suggestions for improving the Company&#8217;s financial and/or operational performance.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition to risks associated with activist shareholders, some institutional investors are increasingly focused on environmental, social and governance (&#8220;ESG&#8221;) factors when allocating their capital. These investors may be seeking enhanced ESG disclosures and actions or may implement policies that discourage investment in certain of the industries, including the oil and gas industry, that we service. To the extent that certain institutional investors implement policies that discourage investments in industries that we service, it could have an adverse effect on our financing costs and access to sources of capital. Further, we may not succeed in implementing or communicating an ESG message that is well understood or received. As a result, we may experience diminished reputation or sentiment, reduced access to sources of capital, an inability to attract and retain qualified personnel and loss of customers, suppliers or subcontractors.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Our business is highly dependent on our ability to utilize the navigation canals adjacent to our facilities.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Houma Facilities are located on the Houma Navigation Canal approximately 30 miles from the GOM. The Houma Navigation Canal provides the shortest and least restrictive means of access from our facilities to open waters. These waterways are navigable waterways of the U.S. and, as such, are protected by federal law from unauthorized obstructions that would hinder water-borne traffic. Federal law also authorizes maintenance of these waterways by the U.S. Army Corps of Engineers. These waterways are dredged from time to time to maintain water depth and, while federal funding for dredging has historically been provided, there is no assurance that Congressional appropriations sufficient for adequate dredging and other maintenance of these waterways will be continued. If funding were not appropriated for that purpose, some or all of these waterways could become impassable by barges or other vessels required to transport many of our products.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_1b_unresolved_staff_comments"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 1B. Unresolved </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Staff Comments</span></p>
  <p style="margin-left:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_1c_cybersecurity"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 1</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">C. Cybersecurity</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Risk Management and Strategy</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our cyber risk management program is integrated into our overall risk oversight program, which is designed to provide executive insight across the business to identify and monitor risks, opportunities and emerging trends that can impact our operations. Cybersecurity risks are identified and assessed through such risk oversight program. We also maintain a cyber insurance policy to mitigate the costs associated with potential cyber-attacks.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We utilize internal and external cybersecurity personnel to assess, detect, identify, manage, prevent and respond to cybersecurity threats and incidents. We regularly evaluate the threat landscape and our security controls, including through assessments, regular network and endpoint monitoring, vulnerability testing and penetration testing.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our approach to cybersecurity includes strategic partnerships for our cybersecurity platforms, documented policies and procedures, end user training and resources to manage and monitor the evolving threat landscape, including through the gathering of actionable threat intelligence. We maintain and periodically evaluate and, as needed, update our incident response plan, which describes the processes we use to prepare for, detect, respond to and recover from a cybersecurity incident, including processes to assess severity, escalate, contain, investigate and remediate an incident, as well as to comply with potentially applicable legal obligations.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have experienced targeted and non-targeted cybersecurity incidents in the past. However, prior cybersecurity incidents have not materially affected us. Notwithstanding our cyber risk management program, we may not be successful in preventing or mitigating a cybersecurity incident that could materially affect us, including our business strategy, results of operations or financial condition. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1A for further discussion of the risks we face from cybersecurity threats.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Governance</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our cybersecurity risk management and strategy processes are led by our Corporate Manager &#8211; Information Technology. This individual is responsible for assessing and managing our material risks from cybersecurity threats and overseeing the prevention, detection, mitigation and remediation of cybersecurity incidents through the management of, and participation in, our cybersecurity risk management process described in </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Management and Strategy&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> above. He has over 27 years of work experience in various roles involving managing information and operational technology security, cybersecurity and operational technology risk management, developing cybersecurity strategy, implementing effective information technology and cybersecurity processes and procedures, and experience in managing regulatory compliance.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">While management is responsible for the day-to-day management of cybersecurity risks, our Board and Audit Committee have ongoing oversight roles. Our Audit Committee is responsible for overseeing cyber and related information technology security risks, including management&#8217;s actions to identify, assess, mitigate, and remediate material cyber risks. An annual report on our enterprise risks, including cybersecurity risks, is presented to the Audit Committee and/or the full Board. The annual report includes an overall cyber risk assessment and activities and action plans to mitigate cyber risks, as well as updates on the implementation and progress of previously discussed mitigation activities and action plans. The Audit Committee continues to review cybersecurity recommendations from our information technology personnel, with input from our director with cybersecurity expertise, in an effort to mitigate the associated risks of potential cyber-attacks.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_3_legal_proceedings"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 3. Legal</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Proceedings</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 7 of our Financial Statements in Item 8 for discussion of our legal proceedings, including the resolution of our MPSV Litigation, which is incorporated herein by reference.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_4_mine_safety_disclosures"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 4. Mine Saf</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ety Disclosures</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Not applicable.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">23</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="part_ii"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">PART</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> II</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_5_market_for_registrants_common_equ"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 5. Market for Registrant&#8217;s Common Equity, Related Sha</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">reholder Matters and Issuer Purchases of Equity Securities</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our common stock is traded on the Nasdaq Global Select Market, under the symbol &#8220;GIFI.&#8221; At February 23, 2024, there were 52 registered holders of our common stock, which does not include beneficial holders (also known as &#8220;street holders&#8221;) whose shares are held by banks, brokers, and other financial institutions.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Issuer Purchases of Equity Securities</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes our purchases of common stock during the three months ended December 31, 2023.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:33.547%;"/>
    <td style="width:1%;"/>
    <td style="width:1%;"/>
    <td style="width:11.502%;"/>
    <td style="width:1%;"/>
    <td style="width:1.84%;"/>
    <td style="width:1%;"/>
    <td style="width:10.922%;"/>
    <td style="width:1%;"/>
    <td style="width:1%;"/>
    <td style="width:1%;"/>
    <td style="width:15.643%;"/>
    <td style="width:1%;"/>
    <td style="width:1.38%;"/>
    <td style="width:1%;"/>
    <td style="width:15.163%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Current Program </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Period</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total Number of<br/>Shares<br/>Purchased </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Average<br/>Price<br/>Paid per<br/>Share </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;position:relative;min-width:fit-content;">(2)</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total Number of<br/>Shares Purchased<br/>as Part of Publicly<br/>Announced Programs</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Approximate Dollar Value of Shares that May Yet Be Purchased Under the Program<br/>(in thousands)</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">October 1 to 31, 2023</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">November 1 to 30, 2023</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">December 1 to 31, 2023</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">29,578</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4.34</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">29,578</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,872</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">29,578</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4.34</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">29,578</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">On December 1, 2023, our Board of Directors (&#8220;Board&#8221;) approved a share repurchase program (&#8220;Share Repurchase Program&#8221;) authorizing the repurchase of up to $5.0 million of our outstanding common stock, effective from December 15, 2023 through December 15, 2024. The timing and amount of any share repurchases is at the discretion of management and may be made from time to time through transactions in the open market, in privately negotiated transactions or by other means in accordance with applicable laws. The Share Repurchase Program does not obligate us to repurchase any shares of common stock and may be modified, increased or suspended or terminated at the discretion of our Board. See Note 8 for further discussion of our Share Repurchase Program.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Average price paid per share includes costs associated with the repurchases. </span></div></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_6"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 6. </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">R</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">eserved</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_7_managements_discussion_analysis_f"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 7. Management&#8217;s Discussion and Analysis of</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Financial Condition and Results of Operations</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> is provided to assist readers in understanding our financial performance during the periods presented and significant trends that may impact our future performance. The results of operations reported and summarized below are not necessarily indicative of future operating results (refer to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Cautionary Statement on Forward-Looking Information&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> for further discussion). This discussion should be read in conjunction with our Financial Statements and the related notes thereto. References to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Notes&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> relate to the Notes to our Financial Statements in Item 8. References to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;nm&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> relate to percentage references that are not considered meaningful. Certain terms are defined in the</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> &#8220;Glossary of Terms&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">beginning on page ii.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Overview</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are a leading fabricator of complex steel structures and modules and provider of specialty services, including project management, hookup, commissioning, repair, maintenance, scaffolding, coatings, welding enclosures, civil construction and staffing services to the industrial and energy sectors. Our customers include U.S. and, to a lesser extent, international energy producers; refining, petrochemical, LNG, industrial and power operators; and EPC companies. We currently operate and manage our business through three operating divisions (&#8220;Services&#8221;, &#8220;Fabrication&#8221; and &#8220;Shipyard&#8221;) and one non-operating division (&#8220;Corporate&#8221;), which represent our reportable segments. Our corporate headquarters is located in The Woodlands, Texas and our primary operating facilities are located in Houma, Louisiana (&#8220;Houma Facilities&#8221;). See Note 9 and &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Description of Operations&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1 for further discussion of our reportable segments.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In the second quarter 2021, we sold our Shipyard Division operating assets and certain construction contracts (&#8220;Shipyard Transaction&#8221;). The Shipyard Transaction excluded the contracts and related obligations for our seventy-vehicle ferry and two forty-vehicle ferry projects (collectively, &#8220;Ferry Projects&#8221;) that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. The wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. Final completion of the wind down will occur upon completion of the warranty periods for the Ferry Projects, the last of which is anticipated to occur in the first quarter 2025. See Note 2 for further discussion of our Ferry Projects, Note 7 for further discussion of the resolution of our MPSV Litigation and Note 9 for further discussion of the wind down of our Shipyard Division operations.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Impacts of Oil and Gas Price Volatility and Macroeconomic Conditions on Operations</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For over a decade, prices of oil and gas have experienced significant volatility, including depressed prices over extended periods, which  negatively impacted our end markets and operating results. Beginning in 2020, the global coronavirus pandemic (&#8220;COVID-19&#8221;) added another layer of pressure and uncertainty on oil and gas prices (with oil prices reaching a twenty-year low and gas prices reaching a four-year low in 2020), which further negatively impacted certain of our end markets through the first quarter 2022. This volatility in oil and gas prices was compounded by Russia&#8217;s invasion of Ukraine in February 2022 (and the related European energy crisis), and the U.S. and other countries actions in response, as well as continued inflationary pressures, resulting in elevated energy prices (with oil prices reaching an eight-year high and gas prices reaching a fourteen-year high in 2022), which positively impacted certain of our end markets. While oil and gas prices declined in 2023, prices have somewhat stabilized, but the duration of such stability is uncertain and difficult to predict, particularly in light of geopolitical turmoil and uncertainty.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, global economic factors that are beyond our control, have and could continue to impact our operations, including, but are not limited to, labor constraints, supply chain disruptions, inflationary pressures, economic slowdowns and recessions, natural disasters, public health crises, and geopolitical conflicts.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The ultimate business and financial impacts of oil and gas price volatility and macroeconomic conditions on our business and results of operations continues to be uncertain, but the impacts have included, or may continue to include, among other things, reduced bidding activity; suspension or termination of backlog; deterioration of customer financial condition; and unanticipated project costs and schedule delays due to supply chain disruptions, labor and material price increases, lower labor productivity, increased employee and contractor absenteeism and turnover, craft labor hiring challenges, increased safety incidents, lack of performance by subcontractors and suppliers, and contract disputes. We continue to monitor the impacts of oil and gas price volatility and macroeconomic conditions on our operations, and our estimates in future periods will be revised for any events and changes in circumstances arising after the date of this Report. See Note 1 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1A for further discussion of the impacts of oil and gas price volatility and macroeconomic conditions and Note 2 for further discussion of the impacts of the aforementioned on our projects.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">25</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other Impacts to Operations</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Hurricane Ida</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2021, our operations were impacted by Hurricane Ida, which made landfall near Houma, Louisiana as a high-end Category 4 hurricane, causing debris and damage to our buildings and equipment at our Houma Facilities. During 2023 and 2022, we recorded gains for our Fabrication Division related to the net impact of insurance recoveries and costs associated with such damage. See Note 2 for further discussion of the impacts of Hurricane Ida.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Offshore Jackets Project</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022, we were awarded a large contract for the fabrication of offshore jackets for our Fabrication Division. In February 2023, we received direction from our customer to suspend all activities on the project, and in July 2023, the customer cancelled the contract. See Note 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;New Awards and Backlog&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of the project cancellation.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">MPSV Litigation</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2023, we resolved our MPSV Litigation, resulting in a charge of $32.5 million for our Shipyard Division. In addition, we entered into the Settlement Agreement and Note Agreement. See Note 4 for further discussion of our Note Agreement and Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Ferry Projects</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2023 and 2022, we experienced construction challenges and cost increases on our Ferry Projects for our Shipyard Division. See Note 2 for further discussion of our Ferry Projects.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Initiatives to Improve Operating Results and Generate Stable, Profitable Growth</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2020, we outlined a strategy to address our operational, market and economic challenges and position the Company to generate stable, profitable growth. Underpinning the first phase of our strategic transformation was a focus on the following initiatives:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Mitigate the impacts of COVID-19 on our operations and workforce;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Reduce our risk profile;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Preserve and improve our liquidity; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Improve our resource utilization and centralize key project resources;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Improve our competitiveness and project execution; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Reduce our reliance on the offshore oil and gas construction sector and pursue new growth end markets.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">With the significant progress achieved on these objectives, during 2021, we shifted our focus to the current phase of our strategic transformation, which is focused on generating stable, profitable growth. Underpinning this strategy is a focus on the following initiatives, which encompass any ongoing initiatives associated with the first phase of our strategic transformation:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Expand our skilled workforce;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Further improve our resource utilization;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Further strengthen project execution and maintain bidding discipline;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Diversify our offshore services customer base, increase our offshore services offerings and expand our services business to include onshore facilities along the Gulf Coast; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Continue to pursue opportunities in our traditional offshore fabrication markets; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Reduce our reliance on the offshore oil and gas construction sector, pursue additional growth end markets and increase our T&amp;M versus fixed price revenue mix, including:</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fabricating modules, piping systems and other structures for onshore refining, petrochemical, LNG and industrial facilities in our core Gulf Coast region,</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fabricating structures in support of our customers as they transition away from fossil fuels to green energy end markets, </span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fabricating structures that support public and private construction activities outside of energy end markets, and</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fabricating foundations, secondary steel components and support structures for offshore wind developments.</span></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">26</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Progress on the Current Phase of our Strategic Transformation</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Efforts to expand our skilled workforce</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; We are focused on ways to improve retention and enhance and add to our skilled, craft personnel, as we believe a strong workforce will be a key differentiator in pursuing new project awards given the scarcity of available skilled labor. Our acquisition of a services and industrial staffing business in the fourth quarter 2021 nearly doubled our skilled workforce and expanded our geographic footprint for skilled labor. We have successfully maintained our overall headcount levels and have opportunistically looked to shift our workforce to higher margin opportunities given the industry-wide labor constraints. We continue to evaluate opportunities to expand our skilled labor headcount given the favorable demand trends, including strategic acquisitions to increase our craft labor headcount.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Efforts to further improve our resource utilization &#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We continue to take actions to improve our resource utilization through the rationalization and integration of our facilities and operations.</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Consolidation of our fabrication activities</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; In the first quarter 2022, we realigned our operating divisions, which included combining all of our fabrication activities within our Fabrication Division to improve utilization and operational efficiency. </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Completion of the wind down of our Shipyard Division operations</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; In the second quarter 2021, we completed the Shipyard Transaction and the wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. The wind down of our Shipyard Division operations is expected to reduce overhead costs, improve utilization and enable senior management to focus on existing and new higher-margin markets associated with our other operating divisions. See Note 1 for further discussion of the Shipyard Transaction and Note 9 for further discussion of the status of the wind down of our Shipyard Division operations.  </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Sale of assets</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; In the third quarter 2022, we sold a purchase option for $1.9 million (net of transaction and other costs) that was entered into in connection with a previous acquisition that provided us with a right to buy a leased fabrication and operating facility for a nominal amount. Further, the fabrication activities previously performed at the facility were moved to our Houma Facilities to improve utilization and operational efficiency. In addition, we entered into a separate lease arrangement for a smaller and more cost-effective office and warehouse facility to accommodate our services activities performed at the previous facility. See Note 3 for further discussion of the sale of the purchase option.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Sublease of our corporate office</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; In the third quarter 2022, we entered into a sublease arrangement with a third-party for the remainder of our corporate office, which will partially recover our lease costs for the office for the duration of our lease. In addition, we entered into a separate lease arrangement for a smaller and more cost-effective office to accommodate our corporate activities.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Sale of excess property </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the third quarter 2023, we commenced an effort to further consolidate our fabrication operations within our Houma Facilities to reduce overhead costs, improve utilization and make certain excess property available for potential sale. As a result of these efforts, in February 2024, we sold certain property of our Fabrication Division that was part of our Houma Facilities for $8.5 million (net of transaction and other costs). The property sold was classified as an asset held for sale (&#8220;Houma AHFS&#8221;) on our Balance Sheet at December 31, 2023. See Note 3 and &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Business and Properties&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1 and 2 for further discussion of our Houma AHFS. </span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Efforts to further strengthen project execution and maintain bidding discipline </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; We have taken, and continue to take, actions to improve our project execution by enhancing our proposal, estimating and operations resources, processes and procedures. Our actions include strategic changes in management and key personnel, the addition of functional expertise, project management training, development of a formal &#8220;lessons learned&#8221; program, and other measures designed to strengthen our personnel, processes and procedures. Further, we are taking a disciplined approach to pursuing and bidding project opportunities, putting more rigor around our bid estimates to provide greater confidence that our estimates are achievable, increasing accountability and providing incentives for the execution of projects in line with our original estimates and subsequent forecasts, and incorporating previous experience into the bidding and execution of future projects. Additionally, we are focused on managing the risks associated with long-term fixed price contracts given the unpredictability of labor availability and labor and material costs, with a priority on increasing the mix of T&amp;M contracts in our backlog.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Efforts to diversify our offshore services customer base, increase our offshore services offerings and expand our services business to include onshore facilities along the Gulf Coast &#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> We believe diversifying and expanding our services business will deliver a more stable revenue stream while providing underpinning work to recruit, develop and retain our craft professionals. Our acquisition of a services and industrial staffing business in the fourth quarter 2021 accelerated our progress in this initiative and provided a stronger platform to continue such progress. Further, in the third quarter 2022, we made capital and other investments to expand our offshore services offering to include welding enclosures, which provide a safe environment for welding, cutting and burning without the need to shut down operations. We are also pursuing opportunities to partner with original equipment manufacturers to provide critical services to our customers along the Gulf Coast and strategic partnership opportunities with engineering companies to provide turnkey solutions.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">27</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Efforts to continue to pursue opportunities in our traditional offshore fabrication markets </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; We continue to fabricate structures associated with our traditional offshore markets, including subsea and associated structures. During 2022, we were awarded a large contract for the fabrication of offshore jackets; however, the project was suspended in February 2023 and cancelled in July 2023. See Note 2 and &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">New Project Awards and Backlog</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8221; below for further discussion of the project cancellation. During 2023, we were awarded multiple contracts for the fabrication of subsea structures, resulting from our previous strategic decision to focus our resources on the subsea fabrication market. We expect subsea fabrication activity to remain strong well into 2024, associated with anticipated subsea developments across the GOM, Guyana and Brazil.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Efforts to reduce our reliance on the offshore oil and gas construction sector, pursue new growth end markets and increase our T&amp;M versus fixed price revenue mix</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; While we continue to pursue opportunities in our traditional offshore markets, we are pursuing initiatives to grow our business and diversify our revenue mix.</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabricate onshore modules, piping systems and structures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; We continue to focus our business development efforts on the fabrication of modules, piping systems and other structures for onshore refining, petrochemical, LNG and industrial facilities. We are having success with smaller project opportunities and our volume of bidding activity for onshore modules, piping systems and structures continues to be strong. We continue to believe that our strategic location in Houma, Louisiana and track record of quality and on-time completion of onshore modules position us well to compete in the onshore fabrication market. We intend to remain disciplined in our pursuit of future large project opportunities to ensure we do not take unnecessary risks generally associated with the long-term, fixed-price nature of such projects. The timing of any future large project opportunities may be impacted by ongoing uncertainty created by oil and gas price volatility and macroeconomic conditions. See Note 1, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Impacts of Oil and Gas Price Volatility and Macroeconomic Conditions on our Operations&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> above and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1A for further discussion of the impacts of oil and gas price volatility and macroeconomic conditions and see </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Government and Environmental Regulation&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Item 1 for further discussion of the recent temporary pause on approvals for applications to export LNG. We continue to strengthen our relationships with key customers and strategic partners and enhance and rationalize our resources as discussed above. </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabricate structures in support of our customers as they transition away from fossil fuels to green energy end markets</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> We believe that our expertise and capabilities provide us with the necessary foundation to fabricate steel structures in support of our customers as they transition away from fossil fuels to green energy end markets. Examples of these opportunities include refiners who are looking to process biofuels, customers looking to embrace the growing hydrogen economy, and customers using carbon capture technologies to offset their carbon footprint. </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabricate structures that support public and private construction activities outside of energy end markets</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We believe our expertise and capabilities for the fabrication of steel structures will enable us to successfully serve a wide range of construction markets. Examples of these opportunities include private construction for the fabrication of structures for data centers and semiconductor manufacturing sites, public construction related to the fabrication of structures to support infrastructure spending, and federal government contracts, such as our contract to support the NASA Artemis Mobile Launcher 2 project.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabricate offshore wind foundations, secondary steel components and support structures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; We continue to believe that current initiatives, and potential future requirements, to provide electricity from renewable and green sources will result in growth of offshore wind projects. We believe that we possess the expertise to fabricate foundations, secondary steel components and support structures for this emerging market. This is demonstrated by our fabrication of wind turbine foundations for the first offshore wind project in the U.S. and the fabrication of a meteorological tower and platform for a separate offshore wind project. While we believe we have the capability to participate in this emerging market, we do not expect meaningful opportunities in the near term.</span></div></div>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">28</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating Outlook</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our focus remains on securing profitable new project awards and backlog and generating operating income and cash flows, while ensuring the safety and well-being of our workforce. Our success, including achieving the aforementioned initiatives, will be determined by, among other things:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our ability to hire, develop, motivate and retain key personnel and craft labor to execute our projects in light of industry-wide labor constraints, and maintain our expected project margins if such constraints result in labor cost increases that cannot be recovered from our customers; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Oil and gas prices and the level of volatility in such prices, including the impact of macroeconomic conditions, geopolitical conflicts and any current or future public health crises;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The level of fabrication opportunities in our traditional offshore markets and the new markets that we are pursuing, including refining, petrochemical, LNG and industrial facilities, green energy and offshore wind developments, and the impact of any climate related regulations, such as the Biden administration&#8217;s executive order pausing approvals for LNG exports discussed in Item 1;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of recognition of our backlog as revenue;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our ability to secure new project awards through competitive bidding and/or alliance and partnering arrangements; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our ability to execute projects within our cost estimates and successfully manage them through completion; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The final completion of the wind down of our Shipyard Division operations, which is subject to the expiration of the warranty periods for our Ferry Projects; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Consideration of organic and inorganic opportunities for growth, including, but not limited to, mergers, acquisitions, joint ventures, partnerships and other strategic arrangements, transactions and capital allocations; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The operability and adequacy of our major equipment.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, the near-term utilization of our Fabrication Division will be impacted by the timing of new project awards and their execution, including the replacement of our cancelled offshore jackets project, and our operations may continue to be impacted by inefficiencies and disruptions associated with employee turnover, craft labor hiring challenges, engineering delays, and supplier and subcontractor disruptions. Our results may also be adversely affected by (i) costs associated with the retention of certain personnel that may be temporarily under-utilized as we evaluate our resource requirements to support our future operations, (ii) investments in key personnel and process improvement efforts to support our aforementioned initiatives, and (iii) higher costs and availability of craft labor due to industry labor constraints. See Note 1 for further discussion of the impacts of oil and gas price volatility and macroeconomic conditions, Note 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Results of Operations&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of our project impacts, and Note 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;New Project Awards and Backlog&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of the project cancellation.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">New Project Awards and Backlog</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">New project awards represent expected revenue values of new contract commitments received during a given period, including scope growth on existing commitments. A commitment represents authorization from our customer to begin work or purchase materials pursuant to a written agreement, letter of intent or other form of authorization. Backlog represents the unrecognized revenue for our new project awards and at December 31, 2023, was consistent with the value of remaining performance obligations for our contracts required to be disclosed under Topic 606 and presented in Note 2. In general, a performance obligation is a contractual obligation to construct and/or transfer a distinct good or service to a customer. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. We believe that backlog, a non-GAAP financial measure, provides useful information to investors as it represents work that we are obligated to perform under our current contracts. New project awards and backlog may vary significantly each reporting period based on the timing of our major new contract commitments.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">29</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Projects in our backlog are generally subject to delay, suspension, termination, or an increase or decrease in scope at the option of the customer; however, the customer is required to pay us for work performed and materials purchased through the date of termination, suspension, or decrease in scope. Depending on the size of the project, the delay, suspension, termination or increase or decrease in scope of any one contract could significantly impact our backlog and change the expected amount and timing of revenue recognized. New project awards by operating segment for 2023 and 2022, are as follows (in thousands):</span></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:70.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:60.832%;"/>
    <td style="width:2.02%;"/>
    <td style="width:1%;"/>
    <td style="width:15.563%;"/>
    <td style="width:1%;"/>
    <td style="width:2.02%;"/>
    <td style="width:1%;"/>
    <td style="width:15.563%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Services</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">92,728</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">85,846</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fabrication </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">66,629</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">154,239</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Shipyard</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(528</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">834</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Eliminations</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(1,110</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(672</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#160;Total</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">157,719</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">240,247</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Backlog by operating segment at December 31, 2023 and 2022, is as follows (in thousands):</span></p>
  <p style="text-indent:5%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:70.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:33.894%;"/>
    <td style="width:1.581%;"/>
    <td style="width:1%;"/>
    <td style="width:12.945%;"/>
    <td style="width:1%;"/>
    <td style="width:1.1%;"/>
    <td style="width:1%;"/>
    <td style="width:13.425%;"/>
    <td style="width:1%;"/>
    <td style="width:1.581%;"/>
    <td style="width:1%;"/>
    <td style="width:12.945%;"/>
    <td style="width:1%;"/>
    <td style="width:1.1%;"/>
    <td style="width:1%;"/>
    <td style="width:13.425%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="14" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Amount</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Labor hours</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Amount</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Labor hours</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Services</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">502</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,322</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">20</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fabrication </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,739</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">104</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">110,287</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">613</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Shipyard</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">709</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,272</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">22</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">&#160;(2)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">12,950</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">109</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">114,881</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">655</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">During 2022, our Fabrication Division was awarded a large contract for the fabrication of offshore jackets. In February 2023, we received direction from our customer to suspend all activities on the project, and in July 2023, the customer cancelled the contract. Accordingly, during 2023, our performance obligations were reduced by $76.1 million to reflect the estimated revenue amount that would not be recognized due to the cancellation. See Note 2 for further discussion of the project cancellation.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">We expect all of our backlog at December 31, 2023, to be recognized as revenue during 2024. Certain factors and circumstances could result in changes in the timing of recognition of our backlog as revenue and the amounts ultimately recognized. See </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Risk Factors&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">in Item 1A for further discussion of our backlog.  </span></div></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Critical Accounting Policies</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Financial Statements are prepared in accordance with generally accepted accounting principles in the U.S. (&#8220;GAAP&#8221;) which require us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenue and expenses and related disclosure of contingent assets and liabilities. We continually evaluate our estimates and judgments based on historical experience and various other assumptions that we believe to be reasonable under the circumstances. We also discuss the development and selection of our critical accounting policies with the Audit Committee of our Board of Directors. We believe the following critical accounting policies affect our more significant judgments and estimates used in the preparation of our Financial Statements.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Revenue Recognition</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our revenue is derived from customer contracts and agreements that are awarded on a competitively bid and negotiated basis using a range of contracting options, including fixed-price, unit-rate, T&amp;M and cost-reimbursable, or a combination thereof. Our contracts primarily relate to the fabrication of steel structures and modules, and certain service arrangements. We recognize revenue from our contracts in accordance with Accounting Standards Update (&#8220;ASU&#8221;) 2014-09, Topic 606 </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Revenue from Contracts with Customers&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> (&#8220;Topic 606&#8221;).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Topic 606 requires entities to recognize revenue in a way that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the entity expects to be entitled in exchange for those goods or services. Additionally, provisions of Topic 606 specify which goods and services are distinct and represent separate performance obligations (representing the unit of account in Topic 606) within a contract and which goods and services (which could include multiple contracts or agreements) should be aggregated. In general, a performance obligation is a contractual obligation to construct and/or transfer a distinct good or service to a customer. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Revenue for performance obligations satisfied over time are recognized as the work progresses. Revenue for performance obligations that do not meet the criteria for over time recognition are recognized at a point-in-time when a performance obligation is complete and a customer has obtained control of a promised asset.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">30</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Long-term Contracts Satisfied Over Time </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue for our long-term contracts is recognized using the POC method based on contract costs incurred to date compared to total estimated contract costs (an input method). Fixed-price contracts, or contracts with a more significant fixed-price component, generally provide us with greater control over project schedule and the timing of when work is performed and costs are incurred, and accordingly, when revenue is recognized. Unit-rate, T&amp;M and cost-reimbursable contracts generally have more variability in the scope of work and provide our customers with greater influence over the timing of when we perform our work, and accordingly, such contracts often result in less predictability with respect to the timing of when revenue is recognized. Contract costs include direct costs, such as materials and labor, and indirect costs attributable to contract activity. Material costs that are significant to a contract and do not reflect an accurate measure of project completion are excluded from the determination of our contract progress. Revenue for such materials is only recognized to the extent of costs incurred. Revenue and gross profit or loss for contracts accounted for using the POC method can be significantly affected by changes in estimated cost to complete such contracts. Significant estimates impacting the cost to complete a contract include: forecast costs of engineering, materials, equipment and subcontracts; forecast costs of labor and labor productivity; schedule durations, including subcontractor and supplier progress; contract disputes, including claims; achievement of contractual performance requirements; and contingency, among others. Although our customers retain the right and ability to change, modify or discontinue further work at any stage of a contract, in the event our customers discontinue work, they are required to compensate us for the work performed to date. The cumulative impact of revisions in total cost estimates during the progress of work is reflected in the period in which these changes become known, including, to the extent required, the reversal of profit recognized in prior periods and the recognition of losses expected to be incurred on contracts. Due to the various estimates inherent in our contract accounting, actual results could differ from those estimates, which could result in material changes to our Financial Statements and related disclosures.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Short-term Contracts and Contracts Satisfied at a Point In Time &#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Revenue for our short-term contracts (which includes revenue associated with our master services arrangements) and contracts that do not satisfy the criteria for revenue recognition over time is recognized when the work is performed or when control of the asset is transferred, the related costs are incurred and collection is reasonably assured.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">   </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Variable Consideration</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Revenue and gross profit or loss for contracts can be significantly affected by variable consideration, which can be in the form of unapproved change orders, claims (including amounts arising from disputes with customers), incentives and liquidated damages that may not be resolved until the later stages of the contract or after the contract has been completed. Variable consideration can also include revenue associated with work performed on a unit-rate, T&amp;M or cost-reimbursable basis that is recognized using the POC method. We estimate variable consideration based on the amount we expect to be entitled and include estimated amounts in transaction price to the extent it is probable that a significant future reversal of cumulative revenue recognized will not occur or when we conclude that any significant uncertainty associated with the variable consideration is resolved.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 1 for further discussion of our revenue recognition policy and Note 2 for further discussion of projects with significant changes in estimated margins during 2023 and 2022 and discussion of unapproved change orders, claims, incentives and liquidated damages for our projects.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Long-Lived Assets</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Goodwill </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent any indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). Our Services Division represents our only reporting unit with goodwill. We perform our annual impairment assessment during the fourth quarter of each year based upon balances as of October 1. In evaluating goodwill for impairment, we have the option to first assess qualitative factors to determine whether it is more likely than not that the fair value of our reporting unit is greater than its carrying value. If we determine that it is more likely than not that the carrying value of the reporting unit is greater than its fair value, we perform a quantitative impairment test by calculating the fair value of the reporting unit and comparing it to the carrying value of the reporting unit, and we recognize an impairment charge to the extent its carrying value exceeds its fair value. To determine the fair value of our reporting unit and test for impairment, we utilize an income approach (discounted cash flow method) as we believe this is the most direct approach to incorporate the specific economic attributes and risk profile of our reporting unit into our valuation model. If, based on future assessments, our goodwill is deemed to be impaired, the impairment would result in a charge to our operating results in the period of impairment. See Note 3 for further discussion of our annual goodwill impairment assessment.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other Long-Lived Assets </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our property, plant and equipment, lease assets (included within other noncurrent assets) and finite-lived intangible assets are reviewed for impairment when events or changes in circumstances indicate that the carrying amount may not be recoverable. If a recoverability assessment is required, we compare the estimated future undiscounted cash flow associated with the asset or asset group to its carrying amount to determine if an impairment exists. An asset group constitutes the minimum level for which identifiable cash flows are principally independent of the cash flows of other assets or asset groups. An impairment loss is measured by comparing the fair value of the asset or asset group to its carrying amount and the excess of the carrying amount of the asset or asset group over its fair value is recorded as an impairment charge. Fair value is determined based on discounted cash flows, appraised values or third-party indications of value, as appropriate. We had no indicators of impairment during 2023.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">31</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Income Taxes</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income taxes have been provided for using the liability method. Deferred income taxes reflect the net tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes using enacted rates expected to be in effect during the year in which the differences are expected to reverse. Due to state income tax laws related to the apportionment of revenue for our projects, judgment is required to estimate the effective tax rate expected to apply to tax differences that are expected to reverse in the future.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A valuation allowance is provided to reserve for deferred tax assets (&#8220;DTA(s)&#8221;) if, based upon the available evidence, it is more likely than not that some or all of the DTAs will not be realized. The realization of our DTAs depends on our ability to generate sufficient taxable income of the appropriate character and in the appropriate jurisdictions.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. See Note 5 for further discussion of our income taxes, DTAs and valuation allowance.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Stock-Based Compensation</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Awards under our stock-based compensation plans are calculated using a fair value-based measurement method. Depending on the terms of the award, we use the straight-line or graded vesting methods to recognize share-based compensation expense over the requisite service period of the award. We recognize the excess tax benefit or tax deficiency resulting from the difference between the deduction we receive for tax purposes and the stock-based compensation expense we recognize for financial reporting purposes created when common stock vests, as an income tax benefit or expense in our Statement of Operations. See Note 6 for further discussion of our stock-based and other compensation plans.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Insurance</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We maintain insurance coverage for various aspects of our business and operations. However, we may be exposed to future losses due to coverage limitations and our use of deductibles and self-insured retentions for our exposures related to property and equipment damage, builder&#8217;s risk, third-party liability and workers&#8217; compensation and USL&amp;H claims. In connection with our insurance coverage renewal for our property and equipment during 2023, we determined that the benefits of maintaining insurance coverage for our property and equipment were limited due to high premium costs and deductibles and increased coverage limitations. Accordingly, we did not renew all of our property and equipment coverage and are now generally self-insured for exposures resulting from any future damage to our property and equipment.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> To the extent we have insurance coverage, we do not have an offset right for liabilities in excess of any deductibles and self-insured retentions. Accordingly, we have recorded a liability for estimated amounts in excess of our deductibles and retentions, and have recorded a corresponding asset related to estimated insurance recoveries, on our Balance Sheet. Further, to the extent we are self-insured, reserves are recorded based upon our estimates, with input from legal and insurance advisors. Changes in assumptions, as well as changes in actual experience, could cause these estimates to change. See Note 2 for discussion of insurance deductibles incurred associated with damage caused by Hurricanes Ida and Note 7 for further discussion of our insurance coverages.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fair Value Measurements</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our fair value determinations for financial assets and liabilities are based on the particular facts and circumstances. Financial instruments are required to be categorized within a valuation hierarchy based upon the lowest level of input that is significant to the fair value measurement. The three levels of the valuation hierarchy are as follows:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 1 &#8211; inputs are based upon quoted prices for identical instruments traded in active markets.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 2 &#8211; inputs are based upon quoted prices for similar instruments in active markets and model-based valuation techniques for which all significant assumptions are observable in the market.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 3 &#8211; inputs are based upon model-based valuation techniques for which significant assumptions are generally not observable in the market and typically reflect estimates and assumptions that we believe market participants would use in pricing the asset or liability. These include discounted cash flow models and similar valuation techniques.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 1 for further discussion of our fair value measurements.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">32</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Results of Operations &#8211; Comparison of 2023 and 2022 </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(in thousands, except for percentages)</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Consolidated</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:57.512%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822000000000001%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Favorable<br/>(Unfavorable)</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Change</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">New project awards</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">157,719</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">240,247</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(82,528</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">151,067</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">142,320</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,747</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cost of revenue</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">162,968</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">134,425</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(28,543</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(11,901</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,895</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(19,796</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Gross profit (loss) percentage</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">(7.9</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-style:italic;min-width:fit-content;">)%</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">5.5</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-style:italic;min-width:fit-content;">%</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,278</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">18,214</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,936</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other (income) expense, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(2,296</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(6,904</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(4,608</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(25,883</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(3,415</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(22,468</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Interest (expense) income, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,440</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">86</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,354</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Loss before income taxes</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(24,443</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(3,329</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(21,114</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income tax (expense) benefit</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">41</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(23</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">64</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(24,402</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(3,352</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(21,050</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
  </table>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">New project awards</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; New project awards for 2023 and 2022 were $157.7 million and $240.2 million, respectively. Other than noted below, new project awards for both periods were primarily related to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Small-scale fabrication work for our Fabrication Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Offshore services work for our Services Division. </span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The 2022 period also included the award of a large contract for the fabrication of offshore jackets (which was awarded in the third quarter 2022 and cancelled by the customer in July 2023) for our Fabrication Division.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Revenue</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Revenue for 2023 and 2022 was $151.1 million and $142.3 million, respectively, representing an increase of 6.1%. The increase was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Higher revenue for our Services Division of $6.5 million, primarily attributable to incremental revenue associated with our welding enclosures business line (commenced in the third quarter 2022), and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Higher revenue for our Fabrication Division of $40.7 million, primarily attributable to:</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue for our offshore jackets project prior to its cancellation (primarily related to procurement activities prior to project suspension), and</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Increased small-scale fabrication activity, offset partially by,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Lower revenue for our Shipyard Division of $38.1 million (including negative revenue for the 2023 period), primarily attributable to:</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The reversal of $32.5 million of previously recognized revenue resulting from the resolution of our MPSV Litigation, and</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Lower revenue for our Ferry Projects, which were substantially complete at year end.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 7 for further discussion of the resolution of our MPSV Litigation.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">33</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Gross profit</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> (loss) &#8211; Gross loss for 2023 was $11.9 million (7.9% of revenue) and gross profit for 2022 was $7.9 million (5.5% of revenue), respectively. Gross loss for 2023 was primarily impacted by:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Charges of $32.5 million related to the aforementioned reversal of revenue resulting from the resolution of our MPSV Litigation for our Shipyard Division, </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Project charges of $2.7 million on our Ferry Projects for our Shipyard Division,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The partial under-recovery of overhead costs due to the under-utilization of our facilities and resources for our Fabrication Division, and to a lesser extent, our resources for our Shipyard Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Holding costs of $0.9 million related to the two MPSVs that were previously in our possession and subject to our MPSV Litigation for our Shipyard Division, offset partially by,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The contribution of our offshore jackets project for our Fabrication Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A strong market and demand for the services provided by our Services Division.</span></div></div>
  <p style="margin-left:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The gross loss for 2023 relative to gross profit for 2022 was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The aforementioned charges of $32.5 million for 2023 for our Shipyard Division,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The aforementioned project charges of $2.7 million for 2023 for our Shipyard Division, and </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">An increase in the under-recovery of overhead costs for our Fabrication Division, offset partially by,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Higher revenue for our Fabrication Division and Services Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A higher margin mix for our Fabrication Division and Services Division.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 2 and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Operating Segments&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of our project impacts and Note 7 for further discussion of the resolution of our MPSV Litigation.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General and administrative expense</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; General and administrative expense for 2023 and 2022 was $16.3 million and $18.2 million, respectively, representing a decrease of 10.6%. The decrease was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Lower administrative expense for our Fabrication Division, Services Division and Corporate Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Lower legal and advisory fees associated with our MPSV Litigation (which was resolved in the fourth quarter 2023) for our Shipyard Division. </span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">General and administrative expense included legal and advisory fees of $3.2 million and $4.5 million for 2023 and 2022, respectively, associated with our MPSV Litigation, which are reflected within our Shipyard Division. See Note 7 for further discussion of the resolution of our MPSV Litigation.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other (income) expense, net</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Other (income) expense, net for 2023 and 2022 was income of $2.3 million and $6.9 million, respectively. Other (income) expense, net generally represents recoveries or provisions for bad debts and credit losses, gains or losses associated with the sale or disposition of property and equipment, and income or expense associated with certain nonrecurring items. Other income for 2023 was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gains of $2.0 million related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida to buildings and equipment at our Houma Facilities for our Fabrication Division,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gains on the sales of equipment and scrap material for our Fabrication Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Miscellaneous income items for our Shipyard Division, offset partially by,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Costs of $0.7 million associated with the consolidation of fabrication activities at our Houma Facilities for our Fabrication Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Charges of $0.5 million associated with damage previously caused by Hurricane Ida to bulkheads and the MPSVs that were previously in our possession and subject to our MPSV Litigation for our Shipyard Division.</span></div></div>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">34</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other income for 2022 was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gains of $7.5 million related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida to buildings and equipment at our Houma Facilities for our Fabrication Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Miscellaneous income items for our Shipyard Division, offset partially by, </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">An impairment charge of $0.5 million associated with the underlying right-of-use asset for our corporate office lease, resulting from a sublease arrangement with a third-party for our Corporate Division, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Charges of $0.2 million associated with damage previously caused by Hurricane Ida to bulkheads and the MPSVs that were previously in our possession and subject to our MPSV Litigation for our Shipyard Division.</span></div></div>
  <p style="margin-left:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 2 for further discussion of the impacts of Hurricane Ida.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Interest (expense) income, net</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Interest (expense) income, net for 2023 and 2022 was income of $1.4 million and $0.1 million, respectively. Interest (expense) income, net for both periods included the net impact of interest earned on our cash and short-term investment balances and interest incurred on the unused portion of our LC Facility and on our Insurance Finance Arrangements. The increase in income for 2023 relative to 2022 was primarily due to higher interest earned on our cash and short-term investment balances for the 2023 period.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Income tax (expense) benefit</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Income tax (expense) benefit for 2023 and 2022 represents state income taxes. No federal income tax benefit was recorded for our losses for either period as a full valuation allowance was recorded against our net deferred tax assets generated during the periods.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Operating Segments</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Services Division</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:57.512%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Favorable<br/>(Unfavorable)</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Change</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">New project awards</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">92,728</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">85,846</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,882</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">93,548</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">87,022</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,526</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">13,783</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,227</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,556</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Gross profit percentage</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">14.7</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-style:italic;min-width:fit-content;">%</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">12.9</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-style:italic;min-width:fit-content;">%</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,902</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,997</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">95</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other (income) expense, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(48</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">106</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">154</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating income</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,929</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,124</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,805</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">New project awards</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; New project awards for 2023 and 2022 were $92.7 million and $85.8 million, respectively, and were primarily related to offshore services work for both periods, with the increase due to incremental new project awards associated with our welding enclosures business line (commenced in the third quarter 2022).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Revenue </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Revenue for 2023 and 2022 was $93.5 million and $87.0 million, respectively, representing an increase of 7.5%. The increase was primarily due to incremental revenue associated with our welding enclosures business line (commenced in the third quarter 2022).</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Gross profit </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Gross profit for 2023 and 2022 was $13.8 million (14.7% of revenue) and $11.2 million (12.9% of revenue), respectively. The increase in gross profit for 2023 relative to 2022 was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Higher revenue, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A higher margin mix resulting from our welding enclosures business line.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General and administrative expense</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; General and administrative expense for 2023 and 2022 was $2.9 million and $3.0 million, respectively, representing a decrease of 3.2%.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other (income) expense, net &#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (income) expense, net for 2023 and 2022 was income of less than $0.1 million and expense of $0.1 million, respectively.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">35</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabrication Division</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:57.512%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822000000000001%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Favorable<br/>(Unfavorable)</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Change</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">New project awards</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">66,629</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">154,239</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(87,610</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">89,046</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">48,299</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">40,747</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,178</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(274</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,452</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Gross profit (loss) percentage</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">11.4</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-style:italic;min-width:fit-content;">%</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">(0.6</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-style:italic;min-width:fit-content;">)%</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,885</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,306</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">421</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other (income) expense, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(2,265</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(7,454</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(5,189</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating income</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,558</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,874</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,684</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">New project awards</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; New project awards for 2023 and 2022 were $66.6 million and $154.2 million, respectively, and were primarily related to small-scale fabrication work for both periods and a large contract for the fabrication of offshore jackets for 2022 (which was awarded in the third quarter 2022 and cancelled by the customer in July 2023).</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Revenue </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Revenue for 2023 and 2022 was $89.0 million and $48.3 million, respectively, representing an increase of 84.4%. The increase was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue for our offshore jackets project prior to its cancellation (primarily related to procurement activities prior to project suspension), and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Higher small-scale fabrication activity.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Gross profit (loss) </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Gross profit for 2023 was $10.2 million (11.4% of revenue) and gross loss for 2022 was $0.3 million (0.6% of revenue). Gross profit for 2023 was primarily impacted by:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The contribution of our offshore jackets project, offset partially by,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The partial under-recovery of overhead costs due to the under-utilization of our facilities and resources due to low work hours.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The gross profit for 2023 relative to gross loss for 2022 was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Higher revenue, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A higher margin mix associated with our small-scale fabrication work, offset partially by,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">An increase in the under-recovery of overhead costs due to lower recoveries associated with our offshore jackets project resulting from its cancellation, offset partially by an increase in work hours associated with our small-scale fabrication work.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Fabrication Division utilization for 2023 and 2022 benefited by $0.1 million and $0.7 million, respectively, from providing resources and facilities to our Shipyard Division for our Ferry Projects. See Note 2 for further discussion of our project impacts.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General and administrative expense</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; General and administrative expense for 2023 and 2022 was $1.9 million and $2.3 million, respectively, representing a decrease of 18.3%. The decrease was primarily due to lower business development costs.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other (income) expense, net &#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (income) expense, net for 2023 and 2022 was income of $2.3 million and $7.5 million, respectively. Other income for 2023 was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gains of $2.0 million related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida to buildings and equipment at our Houma Facilities, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gains on the sales of equipment and scrap materials, offset partially by,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Costs of $0.7 million associated with the consolidation of fabrication activities at our Houma Facilities. </span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other income for 2022 was primarily due to gains of $7.5 million related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida to buildings and equipment at our Houma Facilities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">36</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Shipyard Division</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:57.512%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822000000000001%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Favorable<br/>(Unfavorable)</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Change</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">New project awards</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(528</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">834</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(1,362</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(30,417</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(38,088</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(35,862</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(3,058</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(32,804</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Gross loss percentage</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">nm</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">(39.9</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-style:italic;min-width:fit-content;">)%</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,205</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,469</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,264</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other (income) expense, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">307</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">27</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(280</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(39,374</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(7,554</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(31,820</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
  </table>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">New project awards &#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">New project awards for 2023 and 2022 were negative $0.5 million and $0.8 million, respectively. The negative new project awards for 2023 were due to liquidated damages and contract price adjustments on our Ferry Projects.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Revenue </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Revenue for 2023 and 2022 was negative $30.4 million and $7.7 million, respectively. The decrease was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The reversal of previously recognized revenue resulting from the resolution of our MPSV Litigation. The reversals were primarily due to:</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The write-off of a $12.5 million noncurrent net contract asset associated with the construction contracts subject to the MPSV Litigation, and</span></div></div>
  <div style="margin-left:7.87%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.617714099641811%;display:inline-flex;justify-content:flex-start;">&#8722;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A charge of $20.0 million resulting from the Settlement Agreement and Note Agreement entered into with Zurich in connection with the resolution of our MPSV Litigation.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Lower revenue for our first forty-vehicle ferry project that was substantially completed in the fourth quarter 2022 and accepted by the customer in the second quarter 2023,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Lower revenue for our second forty-vehicle ferry project that was substantially completed in the fourth quarter 2023 and we anticipate customer acceptance of the ferry in March 2024, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Lower revenue for our seventy-vehicle ferry project that was completed and accepted by the customer in the fourth quarter 2023.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 4 for further discussion of the Note Agreement and Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Gross loss </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gross loss for 2023 and 2022 was $35.9 million and $3.1 million (39.9% of revenue), respectively. The gross loss for 2023 was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Charges of $32.5 million related to the aforementioned reversal of revenue resulting from the resolution of our MPSV Litigation, </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Project charges of $2.7 million related to forecast cost increases and liquidated damages on our Ferry Projects,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Holding costs of $0.9 million related to the two MPSVs that were previously in our possession and subject to our MPSV Litigation, and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The partial under-recovery of overhead costs due to the under-utilization of our resources due to low work hours as our remaining projects were nearing completion.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The increase in gross loss for 2023 relative to 2022 was primarily due to:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The aforementioned charges of $32.5 million for 2023,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The aforementioned project charges of $2.7 million for 2023, and </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">An increase in the under-recovery of overhead costs due to a decrease in work hours as our remaining projects were nearing completion. </span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 2 for further discussion of our project impacts and Note 7 for further discussion of the resolution of our MPSV Litigation.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">37</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General and administrative expense</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; General and administrative expense for 2023 and 2022 was $3.2 million and $4.5 million, respectively, representing a decrease of 28.3%. General and administrative expense relates to legal and advisory fees associated with our MPSV Litigation, which was resolved in the fourth quarter 2023. See Note 7 for further discussion of the resolution of our MPSV Litigation.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other (income) expense, net &#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (income) expense, net for 2023 and 2022 was expense of $0.3 million and less than $0.1 million, respectively. Other expense for 2023 and 2022 was primarily due to:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Charges of $0.5 million and $0.2 million, respectively, associated with damage previously caused by Hurricane Ida to bulkheads and the MPSVs that were previously in our possession and subject to our MPSV Litigation, offset partially by,</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Miscellaneous income items for both periods. </span></div></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Corporate Division</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:57.512%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
    <td style="width:1.34%;"/>
    <td style="width:1%;"/>
    <td style="width:10.822%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Favorable<br/>(Unfavorable)</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Change</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">New project awards (eliminations)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(1,110</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(672</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(438</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue (eliminations)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(1,110</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(672</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(438</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,286</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,442</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">156</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other (income) expense, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(290</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">417</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">707</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(7,996</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(8,859</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">863</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General and administrative expense</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; General and administrative expense for 2023 and 2022 was $8.3 million and $8.4 million, respectively, representing a decrease of 1.8%.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other (income) expense, net &#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (income) expense, net for 2023 and 2022 was income of $0.3 million and expense of $0.4 million, respectively. Other expense for 2022 was primarily due to an impairment charge of $0.5 million associated with the underlying right-of-use asset for our corporate office lease, resulting from a sublease arrangement with a third-party.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">38</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Liquidity and Capital Resources</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Available Liquidity</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our primary sources of liquidity are our cash, cash equivalents and scheduled maturities of short-term investments. At December 31, 2023, our cash, cash equivalents, short-term investments and restricted cash totaled $47.9 million, as follows (in thousands):</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:80.22%;"/>
    <td style="width:1.9%;"/>
    <td style="width:1%;"/>
    <td style="width:15.88%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, <br/>2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cash and cash equivalents</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">38,176</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term investments </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,233</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Available cash, cash equivalents and short-term investments</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">46,409</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Restricted cash</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,475</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total cash, cash equivalents, short-term investments and restricted cash</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">47,884</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.87%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Includes U.S. Treasuries with original maturities of four to six months.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our available liquidity is impacted by changes in our working capital and our capital expenditure requirements. Fluctuations in working capital, and its components, are not unusual in our business and are impacted by the size of our projects and the mix of our backlog. Our working capital is particularly impacted by the timing of new project awards and related payments in advance of performing work, and the subsequent achievement of billing milestones or project progress on backlog. Working capital is also impacted at period-end by the timing of contract receivables collections and accounts payable payments on our projects.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, our working capital was $71.8 million and included $47.9 million of cash, cash equivalents, short-term investments and restricted cash, $5.6 million of assets held for sale and $1.1 million of current debt. Excluding cash, cash equivalents, short-term investments, restricted cash, assets held for sale and current debt, our working capital at December 31, 2023 was $19.3 million, and consisted of net contract assets and contract liabilities of negative $2.7 million; contract receivables and retainage of $36.3 million; inventory, prepaid expenses and other assets of $9.1 million; and accounts payable, accrued expenses and other liabilities of $23.3 million. The components of our working capital (excluding cash, cash equivalents, short-term investments, restricted cash, assets held for sale and current debt) at December 31, 2023 and 2022, and changes in such amounts during 2023, were as follows (in thousands):</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:49.24%;"/>
    <td style="width:1.62%;"/>
    <td style="width:1%;"/>
    <td style="width:13.3%;"/>
    <td style="width:1%;"/>
    <td style="width:1.62%;"/>
    <td style="width:1%;"/>
    <td style="width:13.3%;"/>
    <td style="width:1%;"/>
    <td style="width:1.62%;"/>
    <td style="width:1%;"/>
    <td style="width:13.3%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Change </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-weight:bold;font-size:6.03pt;position:relative;min-width:fit-content;">(3)</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,739</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,839</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,100</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract liabilities </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(5,470</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(8,196</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(2,726</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contracts in progress, net </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(2)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(2,731</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(3,357</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(626</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract receivables and retainage, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">36,298</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">29,427</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(6,871</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid expenses, inventory and other current assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,066</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,074</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(992</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounts payable, accrued expenses and other liabilities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(23,302</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(22,593</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">709</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">19,331</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,551</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(7,780</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
  </table>
  <p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $0.4 million and $1.6 million, respectively, associated primarily with our Ferry Projects.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Represents our cash position relative to revenue recognized on projects, with contract assets representing unbilled amounts that reflect future cash inflows on projects, and contract liabilities representing (i) advance billings or payments that reflect future cash expenditures and non-cash earnings on projects and (ii) accrued contract losses that represent future cash expenditures on projects.</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Changes referenced in the </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Cash Flow Activity&#8221; </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">section below may differ from the changes in this table due to non-cash reclassifications and due to certain changes in balance sheet accounts being reflected within other line items on our Statement of Cash Flows, including allowance for doubtful accounts and credit losses, gains and losses on sales of fixed assets and other assets, and accruals for capital expenditures.</span></div></div>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">39</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Cash Flow Activity </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">(in thousands)</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:70.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:66.973%;"/>
    <td style="width:1.42%;"/>
    <td style="width:1%;"/>
    <td style="width:13.103000000000002%;"/>
    <td style="width:1%;"/>
    <td style="width:1.36%;"/>
    <td style="width:1%;"/>
    <td style="width:13.143%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net cash provided by (used in) operating activities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,197</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(8,923</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net cash used in investing activities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(503</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(8,870</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net cash used in financing activities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(1,867</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(1,972</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Operating Activities </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Cash provided by operating activities for 2023 was $7.2 million and cash used in operating activities for 2022 was $8.9 million, and was primarily due to the net impacts of the following:</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">2023 Activity</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Net loss adjusted for depreciation and amortization of $5.5 million, gain from net changes in allowance for doubtful accounts and credit losses of $0.4 million, gain on insurance recoveries of $0.6 million and stock-based compensation expense of $2.0 million;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Decrease in contract assets of $2.1 million related to the timing of billings on projects, primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Decrease in contract liabilities of $2.7 million, primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses on our forty-vehicle ferry projects for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Increase in contract receivables and retainage of $7.1 million related to the timing of billings and collections on projects, primarily due to increased receivable positions on various projects for our Fabrication Division and Services Division, offset partially by a decreased receivable position on our seventy-vehicle ferry project for our Shipyard Division;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Increase in prepaid expenses, inventory and other assets of $0.1 million, primarily due to prepaid expenses and the associated timing of certain prepayments. The change differs from the table above primarily due to the Insurance Finance Arrangements discussed further in Note 4;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Increase in accounts payable, accrued expenses and other current liabilities of $1.2 million related to the timing of payments, primarily due to decreased accounts payable positions on our forty-vehicle ferry projects for our Shipyard Division, offset partially by increased accounts payable positions on various projects for our Fabrication Division. The change differs from the table above primarily due to the Insurance Finance Arrangements discussed further in Note 4; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Change in noncurrent assets and liabilities, net of $31.8 million, primarily due to the write-off of a $12.5 million noncurrent net contract asset, and recording of a $20.0 million liability, associated with the resolution of our MPSV Litigation. The liability was replaced with the Note Agreement. See Note 4 for further discussion of the Note Agreement and Note 7 for further discussion of the resolution of our MPSV Litigation.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">2022 Activity</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Net loss adjusted for depreciation and amortization of $5.1 million, non-cash asset impairments of $0.5 million, gain on insurance recoveries of $1.2 million, and stock-based compensation expense of $2.3 million;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Increase in contract assets of $0.1 million related to the timing of billings on projects, primarily due to increased unbilled positions on various projects for our Fabrication Division and our forty-vehicle ferry projects for our Shipyard Division, offset partially by decreased unbilled positions on our seventy-vehicle ferry project;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Increase in contract liabilities of $1.5 million, primarily due to an increase in advance billings on various projects for our Fabrication Division and seventy-vehicle ferry project for our Shipyard Division, offset partially by a decrease in accrued contract losses and the unwind of advance payments on our forty-vehicle ferry projects for our Shipyard Division;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Increase in contract receivables and retainage of $13.4 million related to the timing of billings and collections on projects, primarily due to increased receivable positions on various projects for our Services Division and Fabrication Division;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Decrease in prepaid expenses, inventory and other assets of $2.2 million, primarily due to prepaid expenses and the associated timing of certain prepayments;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Decrease in accounts payable, accrued expenses and other current liabilities of $1.6 million due to the timing of payments, primarily due to decreased accounts payable positions on various projects for our Fabrication Division and our seventy-vehicle ferry project for our Shipyard Division, offset partially by increased accounts payable positions on various projects for our Services Division; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Change in noncurrent assets and liabilities, net of $0.9 million.</span></div></div>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">40</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Investing Activities </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Cash used in investing activities for 2023 and 2022 was $0.5 million and $8.9 million, respectively. Cash used in investing activities for 2023 was primarily due to capital expenditures of $2.9 million, offset partially by proceeds from asset sales of $0.5 million, recoveries from insurance claims of $0.2 million, and net maturities of short-term investments of $1.7 million. Cash used in investing activities for 2022 was primarily due to purchases of short-term investments of $9.9 million and capital expenditures of $3.1 million, offset partially by proceeds from the Shipyard Transaction of $0.9 million, proceeds from asset sales of $2.0 million, and recoveries from insurance claims of $1.2 million.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financing Activities</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Cash used in financing activities for 2023 and 2022 was $1.9 million and $2.0 million, respectively. Cash used in financing activities for 2023 and 2022 was primarily due to payments on our Insurance Finance Arrangement of $1.3 million and $1.7 million, respectively, and tax payments made on behalf of employees from vested stock withholdings. The 2023 period also included the repurchase of $0.1 million of our common stock under our Share Repurchase Program. See Note 8 for further discussion of our Share Repurchase Program.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Credit Facilities</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 4 for discussion of our LC Facility, Surety Bonds, Note Agreement, Mortgage Agreement, Restrictive Covenant Agreement and Insurance Finance Arrangements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Registration Statement</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have a shelf registration statement that is effective with the SEC that expires on August 24, 2026. The shelf registration statement enables us to issue up to $200.0 million in either debt or equity securities, or a combination thereof, from time to time subsequent to the filing of a prospectus supplement, which among other things, identifies the underwriter, dealer or agent, specifies the number and value of securities that may be sold, and provides a time frame over which the securities may be offered.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Liquidity Outlook</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have made significant progress in our efforts to preserve and improve our liquidity, including cost reductions, the sale of under-utilized assets and facilities, improved project cash flow management and the completion of the Shipyard Transaction. The primary uses of our liquidity for 2024 and the foreseeable future are to fund:</span></p>
  <div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Overhead costs associated with the under-utilization of our facilities and resources for our Fabrication Division until we secure and begin to execute sufficient backlog to fully recover our overhead costs;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Capital expenditures, including expenditures to maintain, upgrade and replace aged equipment;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Working capital requirements for our projects, including the unwind of advance payments on projects; </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Remaining liabilities of the Shipyard Division operations (including accrued contract losses for the Ferry Projects) that were excluded from the Shipyard Transaction;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Interest and principal payments on our Note Agreement entered into in connection with the resolution of our MPSV Litigation and the Settlement Agreement. See Note 4 for further discussion of the Note Agreement and Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement;</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Corporate administrative expenses (including the temporary under-utilization of personnel as we evaluate our resource requirements to support our future operations); </span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Organic and inorganic opportunities for growth, including mergers and acquisitions; and</span></div></div>
  <div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Share Repurchase Program. See Note 8 for further discussion of our Share Repurchase Program.</span></div></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We anticipate capital expenditures of $4.5 million to $5.5 million for 2024, of which approximately $3.5 million relates to upgrades to our Houma Facilities and investments in more technologically advanced equipment. In January 2024, we received insurance proceeds of $2.0 million associated with damage to our Houma Facilities previously caused by Hurricane Ida, which will partially supplement our capital expenditures for 2024. Further investments in our facilities may be required to win and execute potential new project awards, which are not included in these estimates. See Note 2 for further discussion of the impacts of Hurricane Ida.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">41</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We believe that our cash, cash equivalents and short-term investments at December 31, 2023, will be sufficient to enable us to fund our operating expenses, meet our working capital and capital expenditure requirements, and satisfy any debt service obligations or other funding requirements, for 2024 and the foreseeable future. Our evaluation of the sufficiency of our cash and liquidity is primarily based on our financial forecast for 2024 and 2025, which is impacted by our existing backlog and estimates of future new project awards and may be further impacted by the ongoing effects of oil and gas price volatility and macroeconomic conditions, and future losses, if any, due to coverage limitations and our use of deductibles and self-insured retentions for our exposures related to property and equipment damage, builder&#8217;s risk, third-party liability and workers&#8217; compensation and USL&amp;H claims. We can provide no assurances that our financial forecast will be achieved or that we will have sufficient cash and short-term investments to meet planned operating expenses and unforeseen cash requirements. Accordingly, we may be required to obtain new or additional credit facilities, sell additional assets or conduct equity or debt offerings at a time when it is not beneficial to do so.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Off-Balance Sheet Arrangements</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are not a party to any contract or other obligation not included on our Balance Sheet that has, or is reasonably likely to have, a current or future effect on our financial condition, changes in financial condition, revenues or expenses, results of operations, liquidity, capital expenditures or capital resources.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_7a"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 7A. Quantitative and Qualita</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">tive Disclosures About Market Risk</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Not applicable.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_8_financial_statements_supplementar"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 8. Financial Statemen</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ts and Supplementary Data</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In this Report our Financial Statements and the accompanying notes appear on pages F-1 through F-26 and are incorporated herein by reference. See Index to Financial Statements on page </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">44</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_9_changes_in_disagreements_with_acc"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 9. Changes in and Disagreements with Acco</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">untants on Accounting and Financial Disclosure</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_9a_controls_procedures"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 9A. Controls</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and Procedures</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Evaluation of Disclosure Controls and Procedures</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We maintain disclosure controls and procedures that are designed to ensure that information required to be disclosed in the reports that we file or submit under the Securities Exchange Act of 1934 is recorded, processed, summarized and reported within the time periods specified in the SEC rules and forms, and that such information is communicated to management, including our Chief Executive Officer and Chief Financial Officer, as appropriate, to allow timely decisions regarding required disclosure. Management, with the participation of our Chief Executive Officer and Chief Financial Officer, has evaluated the effectiveness of our disclosure controls and procedures (as defined in Rule 13a-15(e) under the Securities Exchange Act of 1934) as of the end of the period covered by this report. Based on this evaluation, our Chief Executive Officer and Chief Financial Officer have concluded that the design and operation of our disclosure controls and procedures were effective as of the end of the period covered by this Report.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Management&#8217;s Report on Internal Control Over Financial Reporting</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Management is responsible for establishing and maintaining adequate internal control over financial reporting, as such term is defined in Exchange Act Rule 13a-15(f). Under the supervision and with the participation of management, including our Chief Executive Officer and Chief Financial Officer, we conducted an evaluation of the effectiveness of our internal control over financial reporting based on the framework in </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Internal Control &#8211; Integrated Framework</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> issued by the Committee of Sponsoring Organizations of the Treadway Commission (2013 framework). Based on our evaluation under the framework in </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Internal Control &#8211; Integrated Framework,</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> our management concluded that our internal control over financial reporting was effective as of December 31, 2023.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Changes in Internal Control Over Financial Reporting</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">There were no changes in our internal control over financial reporting that occurred during the fourth quarter 2023, that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">42</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_9b_or_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 9B. Other</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Information</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Not applicable.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_9c"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 9</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">C. Disclosure Regarding Foreign Jurisdiction That Prevent Inspections</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Not applicable.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="part_iii"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">PART</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> III</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_10_directors_executive_ficers_corpo"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 10. Directors, Executive Of</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ficers and Corporate Governance</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have adopted a Code of Ethics for the Chief Executive Officer, the Chief Financial Officer, and the Chief Accounting Officer and persons performing similar functions (the &#8220;Code of Ethics&#8221;) and a Code of Business Conduct and Ethics, which applies to all employees and directors, including the Chief Executive Officer, the Chief Financial Officer, the Chief Accounting Officer and persons performing similar functions. These codes are available to the public on our Internet website at www.gulfisland.com. Any substantive amendments to the Code of Ethics or any waivers granted under the Code of Ethics will be disclosed within four business days of such event on our website. Such information will remain available on our website for at least twelve months.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The remaining information required by this item may be found in our definitive proxy statement prepared in connection with our 2024 annual meeting of shareholders and is incorporated herein by reference.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_11_executive_compensation"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 11. Executi</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ve Compensation</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information required by this item may be found in our definitive proxy statement prepared in connection with our 2024 annual meeting of shareholders and is incorporated herein by reference.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_12_security_ownership_certain_benef"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 12. Security Ownership of Certain Beneficial Ow</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ners and Management and Related Stockholders Matters</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information required by this item may be found in our definitive proxy statement prepared in connection with our 2024 annual meeting of shareholders and is incorporated herein by reference.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_13_certain_relationships_related_tr"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 13. Certain Relationships and Relate</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">d Transactions, and Director Independence</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information required by this item may be found in our definitive proxy statement prepared in connection with our 2024 annual meeting of shareholders and is incorporated herein by reference.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_14_principal_accounting_fees_servic"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 14. Principal Accou</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">nting Fees and Services</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information required by this item may be found in our definitive proxy statement prepared in connection with our 2024 annual meeting of shareholders and is incorporated herein by reference.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">43</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="part_iv"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">PART</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> IV</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_15_exhibits_financial_statement_sch"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Item 15. Exhibits, Finan</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">cial Statement Schedules</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our required financial statement schedules and exhibits are filed as part of this Report as detailed in our Exhibit Index on page E-1.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(i) Financial Statements</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:92.22%;"/>
    <td style="width:7.78%;"/>
   </tr>
   <tr style="height:8pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:1pt solid;padding-right:0.042in;text-align:left;"><p style="font-size:8pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Page</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:left;"><a href="#report_of_independent_auditor"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Report of Ernst &amp; Young LLP, Independent Registered Public Accounting Firm</span></a><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#160;(PCAOB ID: </span><span><ix:nonNumeric id="F_815c48aa-777d-46ec-967e-49e4b64a03ca" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:AuditorFirmId"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">42</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">)</span></p></td>
    <td style="vertical-align:bottom;padding-right:0.042in;text-align:center;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:left;"><a href="#consolidated_balance_sheets"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Consolidated Balance Sheets at December 31, 2023 and 2022</span></a></p></td>
    <td style="vertical-align:bottom;padding-right:0.042in;text-align:center;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:left;"><a href="#consolidated_statements_operations"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Consolidated Statements of Operations for the Years Ended December 31, 2023 and 2022</span></a></p></td>
    <td style="vertical-align:bottom;padding-right:0.042in;text-align:center;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:left;"><a href="#consolidated_statements_changes_in_share"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Consolidated Statements of Changes in Shareholders&#8217; Equity for the Years Ended December 31, 2023 and 2022</span></a></p></td>
    <td style="vertical-align:bottom;padding-right:0.042in;text-align:center;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:left;"><a href="#consolidated_statements_cash_flows"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Consolidated Statements of Cash Flows for the Years Ended December 31, 2023 and 2022</span></a></p></td>
    <td style="vertical-align:bottom;padding-right:0.042in;text-align:center;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:left;"><a href="#notes_to_consolidated_financial_statemen"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Notes to Consolidated Financial Statements</span></a></p></td>
    <td style="vertical-align:bottom;padding-right:0.042in;text-align:center;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:2pt;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(ii) Schedules</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other schedules have not been included because they are not required, not applicable, immaterial, or the information required has been included elsewhere herein.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(iii) Exhibits</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Exhibit Index on page E-1. We will furnish to any eligible shareholder, upon written request, a copy of any exhibit listed upon payment of a reasonable fee equal to the Company&#8217;s expenses in furnishing such exhibit. Such requests should be addressed to:</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Investor Relations</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gulf Island Fabrication, Inc.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2170 Buckthorne Place, Suite 420</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Woodlands, Texas 77380</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;" id="item_16_form_10k_summary"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Ite</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">m 16. Form 10-K Summary</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">44</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="report_of_independent_auditor"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Re</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">port of Independent Registered Public Accounting Firm</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">To the Shareholders and the Board of Directors of Gulf Island Fabrication, Inc.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Opinion on the Financial Statements</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have audited the accompanying consolidated balance sheets of Gulf Island Fabrication, Inc. (the Company) as of December 31, 2023 and 2022, the related consolidated statements of operations, changes in shareholders' equity and cash flows for each of the two years in the period ended December 31, 2023, and the related notes (collectively referred to as the &#8220;consolidated financial statements&#8221;). In our opinion, the consolidated financial statements present fairly, in all material respects, the financial position of the Company at December 31, 2023 and 2022, and the results of its operations and its cash flows for each of the two years in the period ended December 31, 2023, in conformity with U.S. generally accepted accounting principles.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basis for Opinion</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">These financial statements are the responsibility of the Company's management. Our responsibility is to express an opinion on the Company&#8217;s financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (PCAOB) and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audits we are required to obtain an understanding of internal control over financial reporting but not for the purpose of expressing an opinion on the effectiveness of the Company's internal control over financial reporting. Accordingly, we express no such opinion.</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Critical Audit Matter</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The critical audit matter communicated below is a matter arising from the current period audit of the financial statements that was communicated or required to be communicated to the audit committee and that: (1) relates to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective or complex judgments. The communication of the critical audit matter does not alter in any way our opinion on the consolidated financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing a separate opinion on the critical audit matter or on the accounts or disclosures to which it relates.</span></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:15%;"/>
    <td style="width:1%;"/>
    <td style="width:83%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Revenue recognition for long-term contracts</span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;"> </span></p></td>
   </tr>
   <tr style="height:11pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">Description of the Matter</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">As described in Note 1 to the consolidated financial statements, the Company recognizes revenue for long-term contracts over time using the percentage-of-completion method based on contract costs incurred to date compared to total estimated contract costs (an input method</span><span style="color:#000000;white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;">)</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">. Under this approach, the determination of the progress towards completion requires management to prepare estimates of the costs to complete the contracts. These estimates are subject to considerable judgment and could be impacted by such items as changes to the project schedule; the cost of labor, material, and subcontractors; and productivity. In addition, management must also estimate the total contract revenue the Company expects to receive for the Company&#8217;s contracts that include variable consideration, such as increases to transaction prices for approved and unapproved change orders, claims, incentives and bonuses, and reductions to transaction price for liquidated damages and penalties.</span></p><p style="font-size:11pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;min-width:fit-content;">Auditing management&#8217;s estimate of the progress towards completion of long-term contracts was complex and subjective because of the judgment required to evaluate management&#8217;s determination of the estimated costs to complete such contracts.</span><span style="color:#000000;white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;min-width:fit-content;">Further, auditing the Company&#8217;s measurement of variable consideration was also complex and judgmental as increases to transaction prices for approved and unapproved change orders, claims, bonuses, incentives and reduction to transaction price for liquidated damages or penalties can have a material effect on the amount of revenue recognized and may require significant estimation by management regarding various possible outcomes.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;min-width:fit-content;">  </span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
   </tr>
  </table>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:15%;"/>
    <td style="width:1%;"/>
    <td style="width:83%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;min-width:fit-content;">How We Addressed the Matter in Our Audit</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">To test the Company&#8217;s estimated costs to complete long-term contracts, our audit procedures included, among others, evaluating the significant estimates used to develop the estimated costs to complete and testing the completeness and accuracy of the underlying data. To evaluate the significant estimates, we performed audit procedures that included, among others, comparing amounts to supporting documentation, conducting interviews with project personnel, inspecting support for estimates of project contingencies, and performing lookback analyses by comparing historical actual costs to previous estimates.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">To test the estimated variable consideration, we performed audit procedures that included, among others, obtaining and reviewing executed contracts including any significant amendments, change orders or claims; evaluating management&#8217;s estimates related to pending change orders, claims, liquidated damages or penalties by obtaining and recalculating management&#8217;s probability assessments; corroborating key data points to contractual language; and assessing the reasonableness of management&#8217;s assumptions by comparing to objective data points used.</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="vertical-align:top;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">/s/ </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d04f682a-0da9-46f1-949a-f1044e95e07d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:AuditorName"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Ernst &amp; Young LLP</span></ix:nonNumeric></span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We have served as the Company's auditor since 1997.</span></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_de5f2d1d-f8d7-4249-adae-66c070585857" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="dei:AuditorLocation"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Houston, Texas<br/></span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">March 7, 2024</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_balance_sheets"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CONSOLIDATED B</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ALANCE SHEETS</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(in thousands)</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:66.993%;"/>
    <td style="width:1.58%;"/>
    <td style="width:1%;"/>
    <td style="width:12.923%;"/>
    <td style="width:1%;"/>
    <td style="width:1.58%;"/>
    <td style="width:1%;"/>
    <td style="width:12.923%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">ASSETS</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current assets:</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cash and cash equivalents</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_eedd12da-33e8-4914-b29e-4b49beab1ebc" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">38,176</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c9d444ea-5df1-41cf-8090-ae10aa818dcb" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">33,221</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Restricted cash</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_04f5eea4-a96e-41e1-bc13-563e4da8ad29" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:RestrictedCashCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,475</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_093a61f7-502c-4cc5-99e9-8f4ae23ed80e" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:RestrictedCashCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,603</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term investments</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_fb189fcb-7512-433c-86de-308d57f490c3" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:HeldToMaturitySecuritiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,233</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b6df236e-ee93-4b7c-bbad-71b5dce7ed72" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:HeldToMaturitySecuritiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,905</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract receivables and retainage, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a2817c84-6647-4605-8798-baeb48022064" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:ContractReceivableDueOneYearOrLess" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">36,298</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ac644b2e-2f68-4ce4-a43a-68ca2466a7b9" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:ContractReceivableDueOneYearOrLess" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,427</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3fc95c39-781b-4c92-982d-a69e4f56fad0" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:ContractWithCustomerAssetNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,739</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5217132d-620b-4e10-b726-fec9052974ed" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:ContractWithCustomerAssetNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,839</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5538b003-8035-4490-9d18-cd44f2017c24" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:PrepaidExpenseCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,994</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6850c94f-9fd6-4735-9c8d-98ce74672059" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:PrepaidExpenseCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,475</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Inventory</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a7fbce90-b257-478e-981c-05b7187b108b" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:InventoryNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,072</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_789f4eb6-c695-4acf-8702-5bd994e94c02" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:InventoryNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,599</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Assets held for sale</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6bd064a6-033f-45a5-8e18-b59bdd7c4425" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,640</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total current assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ec3820c5-8f5e-4678-9242-8879b0c8958b" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:AssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">101,627</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c2c127db-2303-48ac-83b3-ba3aa35ca877" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:AssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">87,069</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property, plant and equipment, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d68fb1ff-ef87-4c9b-ab70-07fd14571098" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,145</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_12d643ef-08f2-40ea-b270-c13c21a49ce4" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">31,154</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Goodwill</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_55177fdb-4888-4df5-991a-9c72abc67f23" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,217</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_20aedf02-9680-449e-b46b-76479d439b6d" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:Goodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,217</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other intangibles, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_78ecd0d5-24aa-4b90-a165-c0a5db4b260e" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:OtherIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3">700</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5a6b4c5a-9fb6-4c8c-8466-15b7cb41d8df" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:OtherIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">842</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other noncurrent assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_06f9dc4f-3645-4678-9f2c-a353e77d46bf" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:OtherAssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">739</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_838acb19-42b9-4778-af0f-5d0d0140632c" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:OtherAssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,584</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8d1d5912-45a0-44c5-8cf9-a197acb30821" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">128,428</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2d950e38-1af9-4570-8be3-c29dd3ccde6c" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">134,866</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current liabilities:</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounts payable</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9f0d2d4e-ba8a-445c-88e2-53df1d540dfa" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:AccountsPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,466</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_56552936-3615-47a2-a538-41087981c63c" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:AccountsPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,310</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract liabilities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6aa4104a-1e52-4b3c-b684-24a17b3229a7" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:ContractWithCustomerLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,470</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_553ecda2-dcd5-4353-861c-5220edf9a93b" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:ContractWithCustomerLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,196</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued expenses and other liabilities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_24fc1223-233a-4228-a9e2-9e17f10329e4" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:AccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,836</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f19c45df-a559-4236-a663-c1b65b6c5c54" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:AccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,283</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term debt, current</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_69e602c8-06d4-4ac7-a5b3-911ba0b89c03" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LongTermDebtCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,075</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total current liabilities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_208f2081-28cc-44b7-8018-a0b022edc7d4" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,847</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a1a8d294-b25a-4cdc-be8d-e2804d39bffc" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:LiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,789</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term debt, noncurrent</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c76bb321-6346-4114-ab1e-dfb12ba327d6" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LongTermDebtNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,925</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other noncurrent liabilities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_be448eef-9156-480b-918a-9f50f25b2aa8" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:OtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">685</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2d51cd2b-027b-483b-8669-03e620f30368" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:OtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,453</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total liabilities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9472dd4a-1481-4519-a929-5486a0ef284a" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:Liabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">49,457</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6edab6b7-4e1d-49b7-8149-da42051363fb" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:Liabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">32,242</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Shareholders&#8217; equity:</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">Preferred stock, </span><span style="font-size:9pt;"><span style="-sec-ix-hidden:F_353e6f25-5334-461f-bdfc-c9d489a4cbca;"><span style="-sec-ix-hidden:F_49b424f4-788f-4eca-a50c-26ac4f7ab2b1;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span></span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;par value, </span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3e30191c-e9d2-44f8-8a6e-1341049cdd86" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:PreferredStockSharesAuthorized" unitRef="U_shares" scale="3" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_0bc985d7-ddfc-4c00-8795-8b12c0ad39f5" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:PreferredStockSharesAuthorized" unitRef="U_shares" scale="3" decimals="INF" format="ixt:num-dot-decimal">5,000</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;shares authorized, </span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7fbb1353-667c-44d8-95b2-fabeeb54c31f" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:PreferredStockSharesIssued" unitRef="U_shares" scale="3" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_a672b53d-aff3-4660-9153-b923a9cc4406" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:PreferredStockSharesOutstanding" unitRef="U_shares" scale="3" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_4bea829e-ccdb-48d9-9bb2-3081f1a8d2e7" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:PreferredStockSharesIssued" unitRef="U_shares" scale="3" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_1bedc627-3c70-40d4-8374-ddbe9a27bf2b" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:PreferredStockSharesOutstanding" unitRef="U_shares" scale="3" decimals="INF" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;shares<br/>&#160;&#160;&#160;issued and outstanding</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;"><span style="-sec-ix-hidden:F_9361e155-c9b3-447a-99a3-19c7cd143b31;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></span></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;"><span style="-sec-ix-hidden:F_dc2c70d5-cfd2-41a8-a2dd-995d393aafad;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></span></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">Common stock, </span><span style="font-size:9pt;"><span style="-sec-ix-hidden:F_5a1d0188-f058-4104-8963-d6a758d07493;"><span style="-sec-ix-hidden:F_d235468d-d439-4ad8-b4d5-65df2b1abeab;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span></span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;par value, </span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3ee519d6-9c5b-440c-af64-46b6a5a37312" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:CommonStockSharesAuthorized" unitRef="U_shares" scale="3" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_bd37dbe9-42f8-4ee2-bfd1-a965b8e962fa" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CommonStockSharesAuthorized" unitRef="U_shares" scale="3" decimals="INF" format="ixt:num-dot-decimal">30,000</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;shares authorized, </span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_afff6dcf-9dbe-4197-a709-1b24c173e856" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_656b15f5-ed0f-4196-90d5-374087d5ba39" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,258</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;issued and <br/>&#160;&#160;&#160;outstanding at December 31, 2023 and </span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2cf741d5-284a-4051-b3a3-f99b3ffb40bb" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_58a404c0-ed74-4cc5-94ee-f0989c5f4a82" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,973</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;at December 31, 2022</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_01207d37-ee67-43e0-b9c3-44037d2a1ede" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:CommonStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,729</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e589686c-1a0f-4b91-9435-718e07719413" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CommonStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,591</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Additional paid-in capital</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_96fdc2b3-1b1e-4119-9172-7db507a6c1dc" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:AdditionalPaidInCapital" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">108,615</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_63ee3781-e717-41e8-9e3a-1ced42f56988" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:AdditionalPaidInCapital" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">107,372</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated deficit</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_52bc0b28-10c4-41dc-aa17-dfbb542d48e8" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">41,373</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_692aac43-d905-4399-8278-0e77e3e1e79c" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">16,339</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total shareholders&#8217; equity</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_fd7c2fc2-c3c6-4352-b2c0-670286d37920" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">78,971</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4f7f301c-7f25-491b-a4c7-e11056ff0ebf" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">102,624</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total liabilities and shareholders&#8217; equity</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a36e1020-2227-416a-8215-570859a97539" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LiabilitiesAndStockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">128,428</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8fc59fcd-d411-4171-a356-f457f67cc94b" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:LiabilitiesAndStockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">134,866</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying notes are an integral part of these financial statements.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_statements_operations"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CONSOLIDATED STATEM</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ENTS OF OPERATIONS</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(in thousands, except per share data)</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:66.993%;"/>
    <td style="width:1.58%;"/>
    <td style="width:1%;"/>
    <td style="width:12.923%;"/>
    <td style="width:1%;"/>
    <td style="width:1.58%;"/>
    <td style="width:1%;"/>
    <td style="width:12.923%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_19e68dab-5b68-492c-95ca-40a7080b7f0c" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">151,067</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f23d3b0d-70f6-4707-bacb-34887c20df25" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">142,320</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cost of revenue</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1b45eef6-0220-4dff-9661-46f3cbd1b0a4" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">162,968</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5e926e82-1ea6-4e8b-ad1e-7ba69729a23c" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">134,425</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3bcd3d5f-7351-4caf-a262-f300962d16f5" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">11,901</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_22043ec3-26d7-446b-aec7-12b5b255c06d" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,895</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">General and administrative expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ba88a4d9-8f39-4a77-9ea0-207b9906c533" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:GeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,278</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e49e237e-066d-4217-9cb0-fc6ea18990f8" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:GeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">18,214</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other (income) expense, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_443130b6-fa0d-4d12-9d59-b2465e44680e" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:OtherOperatingIncomeExpenseNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,296</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4ddd004c-5c8c-4dd5-b04a-fe11edff80cc" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:OtherOperatingIncomeExpenseNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,904</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2365bb69-e8b0-4a69-b2dc-767498cee6ae" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">25,883</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_44b0562e-e0e0-4a8d-8bd1-caa2c773bdfb" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,415</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Interest (expense) income, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5806d244-6893-4933-bd1b-bff63167b9ed" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:InterestIncomeExpenseNonoperatingNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,440</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_09e8ef9a-9191-40eb-a4bb-ee9c23f3e034" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:InterestIncomeExpenseNonoperatingNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">86</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Loss before income taxes</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4b91273f-2864-4dbd-846b-798ac71c03df" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">24,443</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_390a75ac-8801-448e-bc82-5110f132f40b" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,329</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income tax (expense) benefit</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e7fa5637-7fd3-4db0-8a19-48dcecb2fbda" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">41</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9bc36a8c-9d5e-4ffc-af43-1ea111f854c8" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_20112d8a-68f8-429d-8a46-67a0ddb9d5df" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">24,402</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_344500c6-89fc-4286-89de-527127e2e45c" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,352</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Per share data:</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic and diluted loss per share</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9b43ffa4-3f55-41f2-82f0-43eb3ae3899f" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" sign="-" format="ixt:num-dot-decimal"><ix:nonFraction id="F_329eeeaf-268b-46a4-b7fc-3cddd96086b5" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" sign="-" format="ixt:num-dot-decimal">1.51</ix:nonFraction></ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8591d88d-d809-4c59-8e95-295a8344fba1" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" sign="-" format="ixt:num-dot-decimal"><ix:nonFraction id="F_7a715bcb-f87b-4fc2-815b-6d941498aaf1" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" sign="-" format="ixt:num-dot-decimal">0.21</ix:nonFraction></ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying notes are an integral part of these financial statements.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_statements_changes_in_share"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CONSOLIDATED STATEMENTS OF CHA</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NGES IN SHAREHOLDERS&#8217; EQUITY</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(in thousands)</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:31.827%;"/>
    <td style="width:1.299%;"/>
    <td style="width:1%;"/>
    <td style="width:10.336%;"/>
    <td style="width:1%;"/>
    <td style="width:1.299%;"/>
    <td style="width:1%;"/>
    <td style="width:10.336%;"/>
    <td style="width:1%;"/>
    <td style="width:1.299%;"/>
    <td style="width:1%;"/>
    <td style="width:10.336%;"/>
    <td style="width:1%;"/>
    <td style="width:1.299%;"/>
    <td style="width:1%;"/>
    <td style="width:10.336%;"/>
    <td style="width:1%;"/>
    <td style="width:1.299%;"/>
    <td style="width:1%;"/>
    <td style="width:10.336%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Common Stock</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Additional<br/>Paid-In</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Accumulated</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Shareholders&#8217;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shares</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Amount</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Capital</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Deficit</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Equity</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at January 1, 2022</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1137d2e5-6011-4e22-8562-e78bf495a2f0" contextRef="C_e86617dd-af33-41aa-8ea0-65f21a936e38" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,622</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f03452b0-52be-4c81-831c-77f73f7a51fe" contextRef="C_e86617dd-af33-41aa-8ea0-65f21a936e38" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,384</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_66e6b371-cd51-45d2-9853-1810aa90b7f3" contextRef="C_c6c931a9-8fbd-48f6-8d9c-9791cf80d297" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">105,511</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_71fe0d71-dacb-4205-b2cc-23d47b209901" contextRef="C_50f0b57f-c5ce-425a-b5a2-ea55f805b900" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">12,987</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c9d39633-1b3d-49d6-96d0-540ee846eef2" contextRef="C_445e78ae-06d3-41df-9768-d7b992aac97f" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">103,908</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_476b9cc3-9b07-4af8-9b00-964157e9341c" contextRef="C_2b1a1662-ff8a-4726-9d7d-8990daae98d8" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,352</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8c979257-1a15-4af9-bfc2-e19fe8bb95c4" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,352</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vesting of restricted stock</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9bbc9156-78b9-428b-8532-3390d374026e" contextRef="C_5d0f48ca-6ac2-4612-9d99-f090eec951de" name="gifi:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">351</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_443a4dd2-d7a6-40e5-96ea-070e848aec5d" contextRef="C_5d0f48ca-6ac2-4612-9d99-f090eec951de" name="gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">23</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_74c1c2ef-99d8-47c6-9dc8-0e27a78c126c" contextRef="C_4df14977-c162-4e59-95d4-a309d321817a" name="gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">211</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_843b7a00-1590-44a9-9853-791dd73e3fba" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">234</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Stock-based compensation expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ed358fb0-69c8-4d08-8e6d-5747fec2a091" contextRef="C_5d0f48ca-6ac2-4612-9d99-f090eec951de" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3">230</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a1bdf3e6-75b8-4e20-b82a-47831c1612e1" contextRef="C_4df14977-c162-4e59-95d4-a309d321817a" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,072</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8492fbc7-b1c5-47fc-a3e1-59b4015773ea" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,302</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at December 31, 2022</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d5135b28-b996-48ea-a8a0-a3ee24453148" contextRef="C_3a6ac62e-2ec1-4406-8670-91db6c3cb623" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,973</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_faf78946-7cff-4d0b-b203-57d9b31425b7" contextRef="C_3a6ac62e-2ec1-4406-8670-91db6c3cb623" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,591</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_57c5c507-6dde-4b36-8536-5ddc04d4e888" contextRef="C_6d4a3762-a252-4d79-b2bf-af325c98237c" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">107,372</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0ea9e878-2409-4b89-87c4-787bef520731" contextRef="C_b89d6df1-af26-4610-822c-ce4801eb8046" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">16,339</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a6bac86c-6ddb-4a6a-b752-62d82d8aa567" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">102,624</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Adoption of ASU 2016-13</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ad300c84-aeab-4f66-bef7-ac6d26c84e26" contextRef="C_2ec33251-854d-4681-ad3f-7cc527f3834d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">632</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d8670d25-d962-4581-92b7-18a183b21943" contextRef="C_018dd156-4163-4547-bf83-69ef53d758df" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">632</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at January 1, 2023</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2cf0b131-3ca8-4fdc-8260-8f393f7074a0" contextRef="C_f9105be5-208f-4b6e-90ee-08d64d638168" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,973</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6e2abf8c-0730-4ee0-bea3-a86f0539a783" contextRef="C_f9105be5-208f-4b6e-90ee-08d64d638168" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,591</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1cb5f4ab-6f21-4e4f-b11a-6125d32d8381" contextRef="C_4f463aa3-6bb0-4982-868d-be2ebc2fed2b" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">107,372</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_dedc4bc2-a933-49c8-a478-c423ebec79f3" contextRef="C_ad31e239-36eb-4de9-adcd-d309cddc02e3" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">16,971</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3f2c61ed-1e67-4201-85e3-3a95fc3a973b" contextRef="C_fba779cf-1af7-4885-a668-5672093d65b3" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">101,992</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a15ada1b-75d8-44b0-bad0-19927020df79" contextRef="C_33a77f56-24fd-401e-9f31-0464c3cd37bc" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">24,402</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7e729e42-73b9-4bdf-95c0-9fad287263d1" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">24,402</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vesting of restricted stock</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f4221ee5-0916-4a51-86f8-edbd07bd97ce" contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd" name="gifi:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">315</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c7565e3a-ebb7-4ccb-a542-5e4b6fc5485a" contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd" name="gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">48</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3ffa1732-09be-4300-850c-20e905337460" contextRef="C_c10c4ca9-3d46-4b21-aa90-73868cd784b0" name="gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">434</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d1eb7511-eb17-4e34-847f-f020b0be2bd1" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">482</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Stock-based compensation expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_35e4b752-a867-405d-b728-711ed9d4895a" contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3">199</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ec8fa7dc-078b-4fd8-9387-7c744e9e91bd" contextRef="C_c10c4ca9-3d46-4b21-aa90-73868cd784b0" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,792</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6bd458f4-5fda-481e-9b4c-8d42c48a99c4" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,991</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Repurchases of common stock</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0c6e54d9-647f-4081-90c7-f7967460d59e" contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">30</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6f616c14-260c-4894-a0fc-3b429520261c" contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6aca9841-68be-4672-b4e2-f951f9e1fcb4" contextRef="C_c10c4ca9-3d46-4b21-aa90-73868cd784b0" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">115</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c5d5482a-9f38-47b7-aa4b-fba0aed6b48b" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">128</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at December 31, 2023</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6d114ef4-ae87-4857-aaa5-5ce4f3762999" contextRef="C_68bd35ae-d7f6-4fc0-bf4e-4ea5fc4c6743" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,258</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_24b4840d-eb7f-4f85-8607-6f7440b3343f" contextRef="C_68bd35ae-d7f6-4fc0-bf4e-4ea5fc4c6743" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,729</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2266aa94-5d71-4181-9fd2-49c4fb33eea4" contextRef="C_49706537-7311-47c1-92fc-133ec168026b" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">108,615</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_826fa9ca-9a69-4510-8bb0-39d9a32814c5" contextRef="C_02f5f5e9-6d82-43b0-b083-9f5ec23011dd" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">41,373</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_24861327-6d72-4409-81f5-62ff930ea488" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">78,971</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying notes are an integral part of these financial statements.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_statements_cash_flows"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">CONSOLIDATED STATEM</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ENTS OF CASH FLOWS</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(in thousands)</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:66.993%;"/>
    <td style="width:1.58%;"/>
    <td style="width:1%;"/>
    <td style="width:12.923%;"/>
    <td style="width:1%;"/>
    <td style="width:1.58%;"/>
    <td style="width:1%;"/>
    <td style="width:12.923%;"/>
    <td style="width:1%;"/>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Cash flows from operating activities:</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4771455b-abfa-4a33-b918-785f2ac259e0" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">24,402</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_650d473e-cd28-490b-b60b-ee672e142f05" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,352</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:10pt;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Adjustments to reconcile net loss to net cash provided by (used in) operating activities:</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation and amortization</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_63adfc4d-bb81-4725-9460-9383389871dd" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,466</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_50e526d3-f835-4ebd-868c-a51cd8deb1d3" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,098</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Asset impairments</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_bca6c083-f4b4-498a-a97a-94fc7108308b" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:AssetImpairmentCharges" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">484</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Change in allowance for doubtful accounts and credit losses</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_568aba96-0641-4bcb-90e7-3f278d4cbd05" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ProvisionForDoubtfulAccounts" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">410</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Loss on sale or disposal of fixed assets, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_052dbf21-7de2-480e-8b85-3b825fc3fd14" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:GainLossOnDispositionOfAssets1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">27</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a826a125-b392-482d-8047-18d3e29775c8" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:GainLossOnDispositionOfAssets1" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">19</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gain on insurance recoveries</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f4f684a4-5f3c-4f4a-a944-b358e8c9e17d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:InsuranceRecoveries" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">571</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_133264b3-eed8-4c42-a345-fb0741dd2cc0" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:InsuranceRecoveries" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,200</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Stock-based compensation expense</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8eb74ea9-7063-4756-bf49-e47ef21f0397" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,991</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_12004109-d807-4570-b943-78702c01983d" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,302</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:20pt;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Changes in operating assets and liabilities:</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:30pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:30pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract receivables and retainage, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_98379bd0-5f81-40d2-8e4e-1cf0a81116aa" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncreaseDecreaseInReceivables" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,093</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_af46007b-5135-4028-8692-3d5036771eda" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncreaseDecreaseInReceivables" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,441</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:30pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:30pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_95d803c4-56b5-4013-bd50-f6902e4c50ab" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,100</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2f55e799-0e98-4fef-9568-ee863b60fe03" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">80</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:30pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:30pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid expenses, inventory and other current assets</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4e3aadb1-792d-4dad-b524-8311983010ed" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:IncreaseDecreaseInPrepaidExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">133</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_59a0ba56-1dd4-433e-a537-d423f4acc5b0" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="gifi:IncreaseDecreaseInPrepaidExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,224</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:30pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:30pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounts payable</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0105f483-e332-42d3-86dd-9073e40b9863" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncreaseDecreaseInAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">9</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d66fd4fc-dbc4-47b9-bf61-657312e5db2b" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncreaseDecreaseInAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,088</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:30pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:30pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract liabilities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6d01598c-f5dc-4190-96c1-8cd51c4d04a9" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,726</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4e112e88-7082-43bb-ae4b-edcd38bbfe81" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,548</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:30pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:30pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_61099ab3-18ce-4b63-9bca-2542baf1b3d2" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,206</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f2a03deb-56d6-44bf-9298-9db3006c3626" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">561</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:30pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:30pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Noncurrent assets and liabilities, net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1ffb334e-2c3d-4f53-8c81-28ac99e21195" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">31,751</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d9d211cc-93d7-4b67-a9c0-9ed0258b7864" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" unitRef="U_USD" scale="3" decimals="-3">876</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net cash provided by (used in) operating activities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_316f5a92-64dd-4e7b-aeb1-6088a874705f" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,197</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e5654c0a-3d63-4ce4-be10-387f1609bd1b" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">8,923</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Cash flows from investing activities:</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capital expenditures</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8472e1d2-e206-4018-9306-16edc5f86ac6" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,876</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ac697b57-1864-4583-9cf5-ef9f0a645ae2" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,086</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Proceeds from Shipyard Transaction</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7b7a7d28-eb4a-45a9-8ed3-25b7eaa46d57" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">886</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Proceeds from sale of property and equipment</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_379ecebf-dd38-4c1b-b8c7-e1debb2b0522" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ProceedsFromSaleOfMachineryAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">456</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5ad1b313-1ef1-4e46-9413-34934c6a918e" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:ProceedsFromSaleOfMachineryAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,035</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Recoveries from insurance claims</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_90db66cb-5020-4225-b8ea-ed3ba143d18e" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:ProceedsFromPropertyInsurancePolicy" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">245</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ec74fe54-c553-4b47-a6d6-45f51bd23fbe" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="gifi:ProceedsFromPropertyInsurancePolicy" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,200</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Purchases of short-term investments</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d7c960fc-c57d-465c-b125-d287830fed82" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:PaymentsToAcquireShortTermInvestments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,028</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9c12a0e1-0571-461a-a9e2-fe2138c4b1e5" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:PaymentsToAcquireShortTermInvestments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,905</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Maturities of short-term investments</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a8d65442-6cdb-4bfb-b41e-635f8ec40255" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,700</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net cash used in investing activities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_28eded61-e651-4431-ab5f-fda2285f4fad" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">503</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0ee9b565-db0a-496d-bfe9-711e789f219e" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">8,870</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Cash flows from financing activities:</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Payments on Insurance Finance Arrangements</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a51efede-7876-44e4-8c4c-7b8a1eabbded" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:PaymentsOnInsuranceFinanceArrangement" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,257</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_967a02b9-a3d4-4cfd-9338-2b85bf2ef49f" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="gifi:PaymentsOnInsuranceFinanceArrangement" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,738</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Repurchases of common stock</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2c20ffbd-4e54-45a4-9adf-534356b710b4" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:PaymentsForRepurchaseOfCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">128</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Tax payments for vested stock withholdings</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_85fcc5da-d8e1-42eb-8dfc-e99c18842ee9" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3">482</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cddcd6f5-91b1-4b2c-b895-90880ec9968a" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3">234</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net cash used in financing activities</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f1c983a4-472d-441f-adaa-8e0781b1541d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,867</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9511458f-d713-452c-b70a-dc3e7345f563" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,972</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net increase (decrease) in cash, cash equivalents and restricted cash</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4bacb918-2d86-45ae-8124-7283cd207904" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,827</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2ed896d4-f1ee-472a-bb8f-1b8fd82751e3" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">19,765</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cash, cash equivalents and restricted cash, beginning of period</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2e63c662-301b-456c-aca7-053cfbb9d3a0" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">34,824</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9ae7fa9d-28b2-4bd2-ad30-cffd8de1760a" contextRef="C_445e78ae-06d3-41df-9768-d7b992aac97f" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">54,589</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cash, cash equivalents and restricted cash, end of period</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8e4297df-f6f2-44a0-88a5-4be23444e36f" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,651</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3bc50f2d-f768-4e8e-81f6-681a28621ee9" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">34,824</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Supplemental cash flow information:</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Interest paid</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9ae051bf-84a2-4a93-9764-117704ac1561" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:InterestPaidNet" unitRef="U_USD" scale="3" decimals="-3">49</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_bda12324-f1c6-4048-8f74-bea84b6fbfe7" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:InterestPaidNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">149</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income taxes paid (refunds received), net</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounts payable excluded from capital expenditures</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4aa93167-d5b5-4e2f-84db-065528b9a63d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:CapitalExpendituresExcludedFromAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">383</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7dde198a-b11e-4e62-915b-e08b00c06e35" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="gifi:CapitalExpendituresExcludedFromAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">217</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
    <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:middle;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Reclassification of property, plant and equipment to assets held for sale</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_517222a4-36cc-481d-beb8-9296f4c9e2ef" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:PropertyPlantandEquipmentReclassificationtoHeldforsale" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,640</ix:nonFraction></span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
    <td style="white-space:pre-wrap;vertical-align:middle;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
    <td style="white-space:nowrap;vertical-align:middle;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying notes are an integral part of these financial statements.</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="notes_to_consolidated_financial_statemen"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">FINANCIAL STATEMENTS</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">DECEMBER 31, 2023</span></p>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_dc29bc62-6078-4051-b50d-21f244e516af" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1. ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c6de4433-12f0-4da6-9186-23778a5e9436" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:NatureOfOperationsPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Nature of Operations</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gulf Island Fabrication, Inc. (together with its subsidiaries, &#8220;Gulf Island,&#8221; &#8220;the Company,&#8221; &#8220;we,&#8221; &#8220;us&#8221; and &#8220;our&#8221;) is a leading fabricator of complex steel structures and modules and a provider of specialty services, including project management, hookup, commissioning, repair, maintenance, scaffolding, coatings, welding enclosures, civil construction and staffing services to the industrial and energy sectors. Our customers include U.S. and, to a lesser extent, international energy producers; refining, petrochemical, LNG, industrial and power operators; and EPC companies. We currently operate and manage our business through </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_561f441f-b0b1-4a3b-9428-ca06a9d6b4f8" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NumberOfOperatingSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen">three</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> operating divisions (&#8220;Services&#8221;, &#8220;Fabrication&#8221; and &#8220;Shipyard&#8221;) and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ef64a8db-6f17-4859-ab45-7bbd86c0bbce" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:NumberOfCorporateNonOperatingSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen">one</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> non-operating division (&#8220;Corporate&#8221;), which represent our reportable segments. Our corporate headquarters is located in The Woodlands, Texas and our primary operating facilities are located in Houma, Louisiana (&#8220;Houma Facilities&#8221;). See Note 9 for further discussion of our reportable segments.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In the second quarter 2021, we sold our Shipyard Division operating assets and certain construction contracts (&#8220;Shipyard Transaction&#8221;). The Shipyard Transaction excluded the contracts and related obligations for our seventy-vehicle ferry and two forty-vehicle ferry projects (collectively, &#8220;Ferry Projects&#8221;) that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. The wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. See Note 2 for further discussion of our Ferry Projects, Note 7 for further discussion of the resolution of our MPSV Litigation and Note 9 for further discussion of the wind down of our Shipyard Division operations.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_e9e042f8-8cb6-413a-98d4-87c62c3d3a4f" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basis of Presentation</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying Consolidated Financial Statements (&#8220;Financial Statements&#8221;) reflect all wholly owned subsidiaries. Intercompany balances and transactions have been eliminated in consolidation. The Financial Statements have been prepared in accordance with the rules and regulations of the U.S. Securities and Exchange Commission (the &#8220;SEC&#8221;) and accounting principles generally accepted in the U.S. (&#8220;GAAP&#8221;).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_646107c8-4cb5-4f73-ae33-595f088e42e3" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:OperatingCyclePolicyPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating Cycle</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The duration of our contracts vary, but may extend beyond twelve months from the date of contract award. Consistent with industry practice, assets and liabilities have been classified as current under the operating cycle concept whereby all contract-related items are classified as current regardless of whether cash will be received or paid within a twelve-month period. Assets and liabilities classified as current, which may not be received or paid within the next twelve months, include contract retainage, contract assets and contract liabilities. Variations from normal contract terms may result in the classification of assets and liabilities as long-term.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_41de456e-cfa3-4ba4-8fb0-b0e679a82af3" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:UseOfEstimates" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Use of Estimates</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preparation of our Financial Statements in conformity with GAAP requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenue and expenses and related disclosures of contingent assets and liabilities. We believe our most significant estimates and judgments are associated with:</span></p><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">revenue recognition for our long-term contracts, including application of the percentage-of-completion (&#8220;POC&#8221;) method, estimating costs to complete each contract and the recognition of incentives, unapproved change orders, claims (including amounts arising from disputes with customers) and liquidated damages;</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">fair value and recoverability assessments that must be periodically performed with respect to long-lived tangible assets, goodwill and other intangible assets; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">determination of deferred income tax assets, liabilities and related valuation allowances;</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">reserves for bad debts and credit losses; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">liabilities related to self-insurance programs; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">determination of the fair-value of our long-term debt; and</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the impacts of volatile oil and gas prices and macroeconomic conditions on our business, estimates and judgments as discussed further below.</span></div></div><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7</span></p></div>
       <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">If the underlying estimates and assumptions upon which our Financial Statements are based change in the future, actual amounts may differ materially from those included in the Financial Statements.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Oil and Gas Price Volatility and Macroeconomic Conditions </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; For over a decade, prices of oil and gas have experienced significant volatility, including depressed prices over extended periods, which negatively impacted our end markets and operating results. Beginning in 2020, the global coronavirus pandemic (&#8220;COVID-19&#8221;) added another layer of pressure and uncertainty on oil and gas prices (with oil prices reaching a twenty-year low and gas prices reaching a four-year low in 2020), which further negatively impacted certain of our end markets through the first quarter 2022. This volatility in oil and gas prices was compounded by Russia&#8217;s invasion of Ukraine in February 2022 (and the related European energy crisis), and the U.S. and other countries actions in response, as well as continued inflationary pressures, resulting in elevated energy prices (with oil prices reaching an eight-year high and gas prices reaching a fourteen-year high in 2022), which positively impacted certain of our end markets. While oil and gas prices declined in 2023, prices have somewhat stabilized, but the duration of such stability is uncertain and difficult to predict, particularly in light of geopolitical turmoil and uncertainty.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, global economic factors that are beyond our control, have and could continue to impact our operations, including, but are not limited to, labor constraints, supply chain disruptions, inflationary pressures, economic slowdowns and recessions, natural disasters, public health crises, and geopolitical conflicts.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The ultimate business and financial impacts of oil and gas price volatility and macroeconomic conditions on our business and results of operations continues to be uncertain, but the impacts have included, or may continue to include, among other things, reduced bidding activity; suspension or termination of backlog; deterioration of customer financial condition; and unanticipated project costs and schedule delays due to supply chain disruptions, labor and material price increases, lower labor productivity, increased employee and contractor absenteeism and turnover, craft labor hiring challenges, increased safety incidents, lack of performance by subcontractors and suppliers, and contract disputes. We continue to monitor the impacts of oil and gas price volatility and macroeconomic conditions on our operations, and our estimates in future periods will be revised for any events and changes in circumstances arising after the date of this Report.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b8f4eb97-83aa-4964-9217-ecf25031bc55" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EarningsPerSharePolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income (Loss) Per Share</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basic income (loss) per share is calculated by dividing net income or loss by the weighted average number of common shares outstanding for the period. Diluted income (loss) per share reflects the assumed conversion of dilutive securities in periods in which income is reported. See Note 8 for calculations of our basic and diluted income (loss) per share.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_650f7e2c-ee5b-4a3a-a491-fea29220b71f" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash Equivalents and Short-term Investments</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Cash Equivalents </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consider investments with original maturities of three months or less when purchased to be cash equivalents. We hold substantially all of our cash deposits with Hancock Whitney Bank (&#8220;Whitney Bank&#8221;).</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Restricted Cash </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; At December 31, 2023 and 2022, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_be245dbe-6a16-4fc7-8f7c-dadadd7c4bee" contextRef="C_b86efaab-ab97-4ab9-9b25-9a1aa5b52a98" name="us-gaap:RestrictedCash" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_774beeb9-2850-4f30-b094-d168cd206b66" contextRef="C_ab576475-9920-402d-a6d4-86599a046a47" name="us-gaap:RestrictedCash" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, of restricted cash as security for letters of credit issued under our letter of credit facility (&#8220;LC Facility&#8221;) with Whitney Bank. Our restricted cash is held in an interest-bearing money market account with Whitney Bank. The classification of the restricted cash as current and noncurrent is determined by the contractual maturity dates of the letters of credit being secured, with letters of credit having </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_38f4989a-584a-4ae0-af32-c230d2e26a1d" contextRef="C_9b386988-e37c-43b3-a8ff-0a6cee812527" name="us-gaap:DebtInstrumentMaturityDateDescription"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">maturity dates of twelve months or less from the balance sheet date classified as current</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, and letters of credit having </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_22c52334-d253-4599-a1be-643e12db21ae" contextRef="C_49d991ee-97c7-40ff-9bc7-8fb7d4273387" name="us-gaap:DebtInstrumentMaturityDateDescription"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">maturity dates of longer than twelve months from the balance sheet date classified as noncurrent</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. See Note 4 for further discussion of our letters of credit and associated security requirements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Short-term Investments </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; We consider investments with original maturities of more than three months but less than twelve months to be short-term investments. At December 31, 2023 and 2022, our short-term investments included U.S. Treasuries with original maturities of approximately four to six months. We intend to hold these investments until maturity and it is not more likely than not that we will be required to sell the investments prior to their maturity. The investments are stated at amortized costs, which approximates fair value due to their near-term maturities. All short-term investments are traded on active markets with quoted prices and represent Level 1 fair value measurements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">   </span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1b6083c6-be0e-49fe-b6fe-3950379139d5" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:InventoryPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory is recorded at the lower of cost or net realizable value determined using the first-in-first-out basis. The cost of inventory includes acquisition costs, production or conversion costs, and other costs incurred to bring the inventory to a current location and condition. Net realizable value is our estimated selling price in the normal course of business, less reasonably predictable costs of completion, disposal and transportation. An allowance for excess or inactive inventory is recorded based on an analysis that considers current inventory levels, historical usage patterns, estimates of future sales and salvage value.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_ab5667f4-4211-425f-a9d5-0dfcc6b4e658" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Allowance for Doubtful Accounts and Credit Losses</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As further discussed under &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">New Accounting Standards&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> below, we adopted the new accounting standard for measuring credit losses effective January 1, 2023. In the normal course of business, we extend credit to our customers on a short-term basis and contract receivables are generally not collateralized; however, we typically have the right to place liens on our projects in the event of nonpayment by our customers. We provide an allowance for credit losses and routinely review individual contract receivable balances and other financial assets for collectability and make provisions for probable uncollectible amounts as necessary. Among the factors considered in our review are the financial condition of our customer and its access to financing, underlying disputes with the customer, the age and value of the receivable balance, company-specific credit ratings, historical company-specific uncollectable amounts and economic conditions in general. See Note 2 for further discussion of our allowance for doubtful accounts and credit losses.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_fc35f53c-ba51-4379-848a-c5ea04a91b33" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stock-Based Compensation</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Awards under our stock-based compensation plans are calculated using a fair value-based measurement method. Depending on the terms of the award, we use the straight-line and graded vesting methods to recognize share-based compensation expense over the requisite service period of the award. We recognize the excess tax benefit or tax deficiency resulting from the difference between the deduction we receive for tax purposes and the stock-based compensation expense we recognize for financial reporting purposes created when common stock vests, as an income tax benefit or expense on our Consolidated Statement of Operations (&#8220;Statement of Operations&#8221;). Tax payments made on behalf of employees to taxing authorities in order to satisfy employee income tax withholding obligations from the vesting of shares under our stock-based compensation plans are classified as a financing activity on our Consolidated Statement of Cash Flows (&#8220;Statement of Cash Flows&#8221;). See Note 6 for further discussion of our stock-based and other compensation plans.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_9de53e08-498d-4bb6-bb57-58d8727bfa16" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:AssetsHeldForSalePolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Assets Held for Sale</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Assets held for sale </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">are measured at the lower of their carrying amount or fair value less cost to sell. See Note 3 for further discussion of our assets held for sale.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_87b7ccb2-5b2b-4d33-ad30-d306d90f3bf6" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DepreciationDepletionAndAmortizationPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Depreciation and Amortization Expense</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment are depreciated on a straight-line basis over estimated useful lives ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_0afe6cb2-44da-43fa-ad5a-e2651f8bd43e;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_080bf6c2-ce7b-487e-ab10-450499fe2c4d" contextRef="C_18924d07-f6c4-4e2b-915b-55f0f0b7d733" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">25 years</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Ordinary maintenance and repairs, which do not extend the physical or economic lives of the plant or equipment, are charged to expense as incurred. Intangible assets are amortized on a straight-line basis over seven years and amortization expense is reflected within general and administrative expense on our Statement of Operations. See Note 3 for further discussion of our property, plant and equipment and intangible assets.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_258612b0-dd94-4e14-9a5c-b10fb5487f74" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Long-Lived Assets</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Goodwill </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent any indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). Our Services Division represents our only reporting unit with goodwill. We perform our annual impairment assessment during the fourth quarter of each year based upon balances as of October 1. In evaluating goodwill for impairment, we have the option to first assess qualitative factors to determine whether it is more likely than not that the fair value of our reporting unit is greater than its carrying value. If we determine that it is more likely than not that the carrying value of the reporting unit is greater than its fair value, we perform a quantitative impairment test by calculating the fair value of the reporting unit and comparing it to the carrying value of the reporting unit, and we recognize an impairment charge to the extent its carrying value exceeds its fair value. To determine the fair value of our reporting unit and test for impairment, we utilize an income approach (discounted cash flow method) as we believe this is the most direct approach to incorporate the specific economic attributes and risk profile of our reporting unit into our valuation model. If, based on future assessments, our goodwill is deemed to be impaired, the impairment would result in a charge to our operating results in the period of impairment. See Note 3 for further discussion of our annual goodwill impairment assessment.</span></p><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9</span></p></div>
       <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other Long-Lived Assets </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our property, plant and equipment, lease assets (included within other noncurrent assets) and finite-lived intangible assets are reviewed for impairment when events or changes in circumstances indicate that the carrying amount may not be recoverable. If a recoverability assessment is required, we compare the estimated future undiscounted cash flow associated with the asset or asset group to its carrying amount to determine if an impairment exists. An asset group constitutes the minimum level for which identifiable cash flows are principally independent of the cash flows of other assets or asset groups. An impairment loss is measured by comparing the fair value of the asset or asset group to its carrying amount and the excess of the carrying amount of the asset or asset group over its fair value is recorded as an impairment charge. Fair value is determined based on discounted cash flows, appraised values or third-party indications of value, as appropriate. We had no indicators of impairment during 2023. See Note 3 for discussion of our corporate office lease impairment during 2022.</span></p></ix:nonNumeric></div><div><ix:nonNumeric id="F_3685438a-cf4c-4c21-8dcb-785135e3b5c5" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:LesseeLeasesPolicyTextBlock" escape="true" continuedAt="F_3685438a-cf4c-4c21-8dcb-785135e3b5c5_1"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leases</span></p></ix:nonNumeric></div><div><ix:continuation id="F_3685438a-cf4c-4c21-8dcb-785135e3b5c5_1"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We record a right-of-use asset and an offsetting lease liability on our Consolidated Balance Sheet (&#8220;Balance Sheet&#8221;) equal to the present value of our lease payments for leases with an original term of longer than twelve months. We do not record an asset or liability for leases with an original term of twelve months or less and we do not separate lease and non-lease components for our leases. Our lease assets are reflected within other noncurrent assets, and the current and noncurrent portions of our lease liabilities are reflected within accrued expenses and other liabilities, and other noncurrent liabilities, respectively, on our Balance Sheet. For leases with escalations over the life of the lease, we recognize expense on a straight-line basis. See Note 3 for further discussion of our lease assets and liabilities.</span></p></ix:continuation></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_25e853b1-8115-45ec-b6c2-d2ad866d8ab1" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:FairValueMeasurementPolicyPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair Value Measurements</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair value determinations for financial assets and liabilities are based on the particular facts and circumstances. Financial instruments are required to be categorized within a valuation hierarchy based upon the lowest level of input that is significant to the fair value measurement.  The three levels of the valuation hierarchy are as follows:</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 1 &#8211; inputs are based upon quoted prices for identical instruments traded in active markets.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 2 &#8211; inputs are based upon quoted prices for similar instruments in active markets and model-based valuation techniques for which all significant assumptions are observable in the market.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 3 &#8211; inputs are based upon model-based valuation techniques for which significant assumptions are generally not observable in the market and typically reflect estimates and assumptions that we believe market participants would use in pricing the asset or liability. These include discounted cash flow models and similar valuation techniques.</span></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The carrying amounts of our financial instruments, including cash and cash equivalents, short-term investments, accounts receivable and accounts payable approximate their fair values. Our fair value assessments for determining the impairments of inventory, assets held for sale, goodwill and long-lived assets, are non-recurring fair value measurements that fall within Level 3 of the fair value hierarchy. Our fair value assessments for long-term debt are recurring fair value measurements that fall within Level 2 of the fair value hierarchy, and are determined using various methods, including quoted prices for identical or similar securities in both active and inactive markets. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 3 for further discussion of our assets held for sale and Note 4 for further discussion of our long-term debt.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_a4da7486-e63b-4b31-9bd7-efaca951b881" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue Recognition</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our revenue is derived from customer contracts and agreements that are awarded on a competitively bid and negotiated basis using a range of contracting options, including fixed-price, unit-rate, time and materials (&#8220;T&amp;M&#8221;) and cost-reimbursable, or a combination thereof. Our contracts primarily relate to the fabrication of steel structures and modules, and certain service arrangements. We recognize revenue from our contracts in accordance with Accounting Standards Update (&#8220;ASU&#8221;) 2014-09, Topic 606 </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Revenue from Contracts with Customers&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> (&#8220;Topic 606&#8221;).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Topic 606 requires entities to recognize revenue in a way that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the entity expects to be entitled in exchange for those goods or services. Additionally, provisions of Topic 606 specify which goods and services are distinct and represent separate performance obligations (representing the unit of account in Topic 606) within a contract and which goods and services (which could include multiple contracts or agreements) should be aggregated. In general, a performance obligation is a contractual obligation to construct and/or transfer a distinct good or service to a customer. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Revenue for performance obligations satisfied over time are recognized as the work progresses. Revenue for performance obligations that do not meet the criteria for over time recognition are recognized at a point-in-time when a performance obligation is complete and a customer has obtained control of a promised asset.</span></p><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span></p></div>
       <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Long-term Contracts Satisfied Over Time </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue for our long-term contracts is recognized using the POC method based on contract costs incurred to date compared to total estimated contract costs (an input method). Fixed-price contracts, or contracts with a more significant fixed-price component, generally provide us with greater control over project schedule and the timing of when work is performed and costs are incurred, and accordingly, when revenue is recognized. Unit-rate, T&amp;M and cost-reimbursable contracts generally have more variability in the scope of work and provide our customers with greater influence over the timing of when we perform our work, and accordingly, such contracts often result in less predictability with respect to the timing of when revenue is recognized. Contract costs include direct costs, such as materials and labor, and indirect costs attributable to contract activity. Material costs that are significant to a contract and do not reflect an accurate measure of project completion are excluded from the determination of our contract progress. Revenue for such materials is only recognized to the extent of costs incurred. Revenue and gross profit or loss for contracts accounted for using the POC method can be significantly affected by changes in estimated cost to complete such contracts. Significant estimates impacting the cost to complete a contract include: forecast costs of engineering, materials, equipment and subcontracts; forecast costs of labor and labor productivity; schedule durations, including subcontractor and supplier progress; contract disputes, including claims; achievement of contractual performance requirements; and contingency, among others. Although our customers retain the right and ability to change, modify or discontinue further work at any stage of a contract, in the event our customers discontinue work, they are required to compensate us for the work performed to date. The cumulative impact of revisions in total cost estimates during the progress of work is reflected in the period in which these changes become known, including, to the extent required, the reversal of profit recognized in prior periods and the recognition of losses expected to be incurred on contracts. Due to the various estimates inherent in our contract accounting, actual results could differ from those estimates, which could result in material changes to our Financial Statements and related disclosures. See Note 2 for further discussion of projects with significant changes in estimated margins during 2023 and 2022.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Short-term Contracts and Contracts Satisfied at a Point In Time &#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Revenue for our short-term contracts (which includes revenue associated with our master services arrangements) and contracts that do not satisfy the criteria for revenue recognition over time is recognized when the work is performed or when control of the asset is transferred, the related costs are incurred and collection is reasonably assured.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Variable Consideration</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Revenue and gross profit or loss for contracts can be significantly affected by variable consideration, which can be in the form of unapproved change orders, claims (including amounts arising from disputes with customers), incentives and liquidated damages that may not be resolved until the later stages of the contract or after the contract has been completed. Variable consideration can also include revenue associated with work performed on a unit-rate, T&amp;M or cost-reimbursable basis that is recognized using the POC method. We estimate variable consideration based on the amount we expect to be entitled and include estimated amounts in transaction price to the extent it is probable that a significant future reversal of cumulative revenue recognized will not occur or when we conclude that any significant uncertainty associated with the variable consideration is resolved. See Note 2 for further discussion of our unapproved change orders, claims, incentives and liquidated damages.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Additional Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Topic 606 also requires disclosures regarding the nature, amount, timing and uncertainty of revenues and cash flows from contracts with customers. See Note 2 for required disclosures under Topic 606.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_4aa980eb-2e11-421b-9fa7-3ebebc9cb997" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:PrecontractCostPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pre-Contract Costs</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pre-contract costs are generally charged to cost of revenue as incurred, but in certain cases their recognition may be deferred if specific probability criteria are met. At December 31, 2023 and 2022, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_90d9430c-4f47-4b77-9864-fef89790c47f" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:AmountOfDeferredCostsRelatedToLongTermContracts" unitRef="U_USD" scale="3" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_f4c14772-56c5-4b60-8078-3d961b1d7821" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:AmountOfDeferredCostsRelatedToLongTermContracts" unitRef="U_USD" scale="3" decimals="INF" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> deferred pre-contract costs.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_81c38f89-2525-460f-bfaf-4a392f7aff52" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:OtherIncomeExpenseNetPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (Income) Expense, Net</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (income) expense, net, generally represents recoveries or provisions for bad debts and credit losses, gains or losses associated with the sale or disposition of property and equipment, and income or expense associated with certain nonrecurring items. For 2023 and 2022, other (income) expense, net included gains of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_558aa5b7-5b11-4d72-b3cf-10d07ad24e8c" contextRef="C_45441188-7fd4-40fd-889e-58292a77a98a" name="us-gaap:InsuranceRecoveries" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e76ff9b8-d9ca-4a98-b165-37bbdff27743" contextRef="C_c216a8b8-8f77-405a-8676-71144cba1804" name="us-gaap:InsuranceRecoveries" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">7.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida. See Note 2 for further discussion of the impacts of Hurricane Ida.</span></p></ix:nonNumeric></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">11</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_fefb169d-f450-4fbb-a5e5-6d66db3f4b9a" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncomeTaxPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income Taxes</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income taxes have been provided for using the liability method. Deferred income taxes reflect the net tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes using enacted rates expected to be in effect during the year in which the differences are expected to reverse. Due to state income tax laws related to the apportionment of revenue for our projects, judgment is required to estimate the effective tax rate expected to apply to tax differences that are anticipated to reverse in the future.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A valuation allowance is provided to reserve for deferred tax assets (&#8220;DTA(s)&#8221;) if, based upon the available evidence, it is more likely than not that some or all of the DTAs will not be realized. The realization of our DTAs depends on our ability to generate sufficient taxable income of the appropriate character and in the appropriate jurisdictions. Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. See Note 5 for further discussion of our income taxes and DTAs.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_521f906d-49a1-46c2-86c5-99f087a840b8" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">New Accounting Standards</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financial instruments </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the first quarter 2023, we adopted ASU 2016-13, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Financial Instruments - Credit Losses - Measurement of Credit Losses on Financial Instruments,&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> which changes the way we evaluate credit losses for most financial assets and certain other instruments. For trade and other receivables, short-term investments, loans and other instruments, we are required to use a new forward-looking &#8220;expected loss&#8221; model to evaluate impairment, which includes considering a broader range of information to estimate expected credit losses and may potentially result in earlier recognition of allowances for losses. The new accounting standard was adopted using the cumulative-effect transition method with any cumulative-effect adjustment being recorded to accumulated deficit on January 1, 2023. Upon adoption, we recorded a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_43020362-b443-4c67-8697-4399d45a7a7e" contextRef="C_381fcc55-57f3-4b03-b7a7-9eb8efea19d7" name="gifi:RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million increase to beginning accumulated deficit, a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ffca34eb-a237-42a7-93ee-478be2407cc9" contextRef="C_381fcc55-57f3-4b03-b7a7-9eb8efea19d7" name="gifi:DecreaseToContractReceivablesAndRetainageNetAndContractAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million decrease to contract receivables and retainage, net and contract assets, and a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_02735050-6a71-4823-bf1d-a15f13342c73" contextRef="C_381fcc55-57f3-4b03-b7a7-9eb8efea19d7" name="us-gaap:IncreaseDecreaseInOtherNoncurrentAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million decrease to other noncurrent assets, on our Balance Sheet. Adoption of the new standard did not have a material effect on our results of operations or related disclosures.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Business Combinations </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the first quarter 2023, we adopted ASU 2021-08, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Business Combinations - Accounting for Contract Assets and Contract Liabilities from Contracts with Customers,&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> which changes the way companies measure contract assets and contract liabilities from contracts with customers acquired in a business combination and creates an exception to the general recognition and measurement principle of ASC 805. Adoption of the new standard did not have a material effect on our financial position, results of operations or related disclosures.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Segment Reporting </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the fourth quarter 2023, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued ASU 2023-07 &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Segment Reporting - Improvements to Reportable Segment Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">,&#8221; which requires additional information about a public company&#8217;s significant segment expenses and more timely and detailed segment information reporting throughout the fiscal period. The new standard will be effective for us in the fourth quarter 2024. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard is required to be applied using the retrospective transition method. We are assessing the effect that the new standard will have on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Income Taxes </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the fourth quarter 2023, the FASB issued ASU 2023-09 &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Income Taxes - Improvements to Income Tax Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">,&#8221; which requires enhanced disclosures related to rate reconciliation and income taxes paid information. The new standard will be effective for us in the fourth quarter 2025. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard may be applied using either the prospective or retrospective transition method. We are assessing the effect of the new standard on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div></ix:nonNumeric></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div>
  <div><ix:nonNumeric id="F_552e7a9b-d336-4084-8581-686f99ab5119" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:RevenueFromContractWithCustomerTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2. REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As discussed in Note 1, we recognize revenue for our contracts in accordance with Topic 606. Summarized below are required disclosures under Topic 606 and other relevant guidance.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Disaggregation of Revenue</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_446c28c8-57b4-4789-9a2b-3263af032352" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DisaggregationOfRevenueTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following tables summarize revenue for each of our operating segments, disaggregated by contract type and duration, for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.787%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year ended December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Eliminations</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f7e4a55b-35b3-4fe5-b500-bd76a15ce5b4" contextRef="C_06f78687-0def-405a-baa0-8a975b546234" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,618</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f3c3b721-0df3-4589-9b72-a13f261a54ee" contextRef="C_7c78c8ad-38fa-4102-ac48-f7653ccce9fe" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">51,015</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_db01ade1-b404-44e3-b35c-8ce1ce2c7b82" contextRef="C_c3a7e33f-3b2a-4e62-89ec-6b329f36ce78" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">30,417</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_585db5ce-c97e-4daf-9dbb-30ce56c58a9c" contextRef="C_a8ebeb7a-bb96-46e4-a1d7-165aa5761dc2" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-">33</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_adf69f94-fcf0-4237-b7b1-0578586499b3" contextRef="C_8ef6ff0d-f798-451f-a56a-21690e3539d0" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,183</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ca045668-0ef9-413b-bc24-0af6d542f362" contextRef="C_6e556d01-c547-458a-a98e-9b83be20cbf8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">87,914</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_16d2311f-72a9-4428-8c37-5b871a82830b" contextRef="C_879241d4-8e67-4078-b6f2-e9b783ae6fd9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">38,031</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b80bef91-e9af-48bd-8641-92a4920b21a2" contextRef="C_640ef6aa-b5f2-4dad-958e-d37660c7f86a" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">125,945</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_45ca27dd-0127-40a2-afe6-ac90e2ec854c" contextRef="C_d862d658-577e-494e-8df1-aaaf02861fd5" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,016</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_dcec0d3b-da9f-4e7a-a7a9-905f18a8ce88" contextRef="C_4a193f8f-cc17-4e7e-87d5-3d5a87a85499" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,077</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b1662ec9-3a4f-4728-8a88-3e946978fc8e" contextRef="C_4591485a-8e55-4cd0-8d54-1ae706046e0f" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,939</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_eb3ce1ca-8539-4ec0-a225-e036f285933a" contextRef="C_833f9103-3927-46fc-a722-fc251a02e77f" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">93,548</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ed4c4b3f-1fa8-4450-be0c-c4cfcf59048e" contextRef="C_4c201577-ca6e-4ad5-8fa3-8980f68f6ea6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,046</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ee6294fd-3e11-4e7b-ac65-767ca56ec32e" contextRef="C_6d90cd7b-8dee-4f6c-aeb5-be005a60fa04" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">30,417</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_aa64627c-f711-44a7-b27e-d39d9f09f5ed" contextRef="C_8cb46c35-a6a9-452c-8adf-30d5a5f42f40" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,110</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9114a8db-624f-4af2-828c-a3b41a508a8d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">151,067</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_464e0b18-f9e0-44ff-8099-52ff382647eb" contextRef="C_39b2f55f-413b-4bd7-a70a-93bfd3cdc4de" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,618</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c06ad4a5-7cc3-4b71-b37f-ab3f2ff9f77f" contextRef="C_a847befb-7bf5-4190-a135-70de8e21abad" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">82,535</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_58e34426-9322-442f-b3f3-18c196434251" contextRef="C_246f21ef-4b55-43a8-8366-c3934a370a15" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">30,417</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_dc0396a9-20a3-4c98-8e48-5c2b2dd1ce09" contextRef="C_ce6032be-9c89-4fa7-a4d6-516a38833742" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">33</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5a6044a7-4fef-49fc-bc48-7957d43a454e" contextRef="C_10d79ba6-7b9d-404f-abff-543af2292ae2" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">53,703</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7a132083-c7e5-451b-8d17-c882938dc7c1" contextRef="C_20813156-538f-4600-a39d-fb62806f1a85" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">91,930</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4798f39e-d266-4154-bcea-2a42f3679d4d" contextRef="C_4a9335f0-add2-49d0-8e37-7a2c1d77be3f" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,511</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_616f604b-e594-4902-a1fd-d928b25a9107" contextRef="C_68bfab3d-d457-4e66-807d-c03156337973" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,077</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8001e60f-b1f3-414f-8202-c032586c3e18" contextRef="C_4a1745f1-d403-4e9b-927c-aec8bfb30e5a" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">97,364</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0a01c947-c286-452a-9d4e-eb8582190930" contextRef="C_833f9103-3927-46fc-a722-fc251a02e77f" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">93,548</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0e6c4024-e12a-43d8-8a39-66a23ef64f81" contextRef="C_4c201577-ca6e-4ad5-8fa3-8980f68f6ea6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,046</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_529d7392-e4bf-4ea9-a999-b1531f266dd5" contextRef="C_6d90cd7b-8dee-4f6c-aeb5-be005a60fa04" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">30,417</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_40fb6ca0-1c10-440a-8459-012f4283fd40" contextRef="C_8cb46c35-a6a9-452c-8adf-30d5a5f42f40" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,110</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ec00815c-415a-4ca8-a46c-00c180116e78" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">151,067</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.787%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:9.442%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year ended December 31, 2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Eliminations</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f3b19f8a-42de-45ea-91fd-bdab6d8ff4d2" contextRef="C_be09cd52-4568-408b-bdb6-ba23ade96279" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,035</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_40365584-eea3-4b88-bc96-e6e2ebb9a5d2" contextRef="C_ebf1736a-1170-492a-8214-ef457875bc5a" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">36,127</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_98a1080d-3ec1-41d0-ad6d-d0c10e7efb33" contextRef="C_c1840173-ab69-485f-b424-fdd9a23ace30" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,671</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_fc56070d-61c2-4588-9eea-d8af03ac5603" contextRef="C_a1761f83-7c5c-4336-b3f3-d87487bbf840" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-">7</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_45f3b5ec-c808-4a38-84cb-07027bff2773" contextRef="C_b7a3279c-fdc6-4bb6-b63e-a8ed8e06e4e7" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">48,826</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a5d8c696-3068-4ef1-bd7a-7496cd86e026" contextRef="C_7b93b9fb-422c-4053-abd2-26d9ab39ec05" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">79,426</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5c144dcc-9fa9-4a7b-b7c7-ca46f847dd30" contextRef="C_2a187e57-f37c-42cb-b040-9f912d512141" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,526</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_56bd1fbb-c475-4fd3-bb02-a3561d6b32cd" contextRef="C_ba57f9dd-ca27-4248-8727-bc9983095efa" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">88,952</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8bb4ba91-a36c-4b64-ab8a-0db8b3429fed" contextRef="C_54d43905-2604-4f3d-9db0-f0afb038ed44" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,561</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_09ef1c64-f50c-4ab5-8750-930a868b316a" contextRef="C_574478c6-3424-4b10-81e0-a8e51c53a492" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,646</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cce187d0-457a-4aa8-8101-efdf88f2076e" contextRef="C_69875705-892d-41b2-80ba-7e0a92c631b5" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">665</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d056135d-e7b7-455b-a170-e6a33b9fadc0" contextRef="C_ecfa9e75-7ee7-4840-92fb-cc49075d1648" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,542</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c8658224-2b46-414f-ab42-8a21e61a4d41" contextRef="C_c8639d00-e088-4473-8175-a7f6d3c3e0c6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">87,022</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f110530c-cae9-4712-ba89-fe49f5c738dd" contextRef="C_cbc768a4-e0c3-4cec-a01c-05e92d38b313" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">48,299</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_267dbd67-4406-47ac-b646-298f86ee44c6" contextRef="C_bbf9f0a1-e9b7-4b9d-bfb0-b1fc5cf2dc5f" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,671</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7525d264-0b4e-4c08-b869-fb0019841f57" contextRef="C_9e62d206-06dd-42d5-a27d-c90cc90990df" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">672</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3514d8eb-36cb-4b72-a269-3fb351c65b08" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">142,320</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cf4115fa-b03b-4187-979f-f1e3f63485c0" contextRef="C_774fe221-71b2-438a-8da2-b46cda39d663" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,035</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d08d5766-1903-462d-b2e3-c41e52854a0e" contextRef="C_42157485-3d8c-40cf-89ba-67270f7bbea0" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">43,037</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3b7f706b-d1a1-4ebf-86d3-63886e06a55d" contextRef="C_5dc5f49a-6d78-4f27-b6fd-cba90db18506" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,671</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_76b170a1-df40-477a-b14c-fc955c85b33d" contextRef="C_45b1c6ba-852a-4bff-8537-06a247417f70" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">55,743</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_524c3f7c-01b8-4d39-b4a3-fd235ec2efef" contextRef="C_6c42f479-dd72-456f-86ad-1450ace35beb" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">81,987</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_58369fa6-456e-4817-9d53-cd91c64ca46b" contextRef="C_675fc0ac-03b3-4668-8cf2-7bb640ea0347" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,262</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_79a59e6c-d409-4e87-aa87-ce829d52f9d9" contextRef="C_96cb0217-26bb-4cf9-8b4e-f4235c892161" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">672</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_954e1c0c-af2d-4a94-9749-7516e9faae6c" contextRef="C_398fb557-9f10-42cc-b522-240ff7e51ae1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">86,577</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_809a8549-8584-48b2-8aa0-ce34c80be801" contextRef="C_c8639d00-e088-4473-8175-a7f6d3c3e0c6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">87,022</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_260f43c4-5db6-4a8c-9158-4ac3542b1a3b" contextRef="C_cbc768a4-e0c3-4cec-a01c-05e92d38b313" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">48,299</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a7cdaab5-c7c3-4d47-8287-b91bfb365205" contextRef="C_bbf9f0a1-e9b7-4b9d-bfb0-b1fc5cf2dc5f" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,671</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e1e5e334-9656-44b6-9234-cbd436762ae0" contextRef="C_9e62d206-06dd-42d5-a27d-c90cc90990df" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">672</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_203ea4cb-716f-4e59-9bc1-53cba9f7c7f6" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">142,320</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:nonNumeric></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future Performance Obligations</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1ab8c710-1ed7-4909-b520-ed3030c661b5" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes remaining performance obligations for each of our operating segments, disaggregated by contract type, at </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2023 (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.505%;"/>
        <td style="width:1%;"/>
        <td style="width:12.975%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:12.975%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:12.975%;"/>
        <td style="width:1%;"/>
        <td style="width:1.2%;"/>
        <td style="width:1%;"/>
        <td style="width:12.975%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9b65a433-4054-47e1-8a66-f6cf354b1c9f" contextRef="C_d9b40c1a-b5f6-4bbc-a8d3-1a6ed5b34a88" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">502</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_be56670a-907e-4e36-b8ba-ee85a3c8e466" contextRef="C_7adcd642-c74c-48ef-ac50-7b6601a8cfc3" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,446</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2e20efd8-73a1-4fb9-9072-b01a0f126567" contextRef="C_0583a672-521e-4eaf-a2a7-daf9543e70fa" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">709</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_166da86f-3c10-45bc-a86d-a1322ddca6fa" contextRef="C_0cb87387-c0b6-4e37-9819-9b55ee7f470c" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,657</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_de24fc16-3a3a-40ff-af7f-275f8ec4bfa3" contextRef="C_2935e2a4-dafe-4535-93c8-3946a64d44ec" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">293</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5b2003d9-0ea8-485b-aa7f-fa7ac712842d" contextRef="C_1cda6b85-7fa8-4c33-aaf0-76f037ac8dbf" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">293</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1a3ae99b-6348-471b-8e5d-9a8993836a40" contextRef="C_5603366b-aec4-44b8-94c7-5351a28ea112" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">502</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_800049b5-e41c-4fe2-8cbd-99e1d37df20f" contextRef="C_2157cccd-4322-435c-9ffb-a392a6e522c4" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,739</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_30ae313a-b545-4a08-b624-dc0dfd7d2e58" contextRef="C_33ad9a6b-8e6e-4703-a364-62f40aaf9470" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">709</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_bbcb29e5-94dc-47ce-a791-0c5a85df09fc" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:RevenueRemainingPerformanceObligation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,950</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_c4a01197-3199-4646-9caa-71eb04f9ecc2" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">We expect all of our performance obligations at December 31, 2023, to be recognized as revenue during 2024. </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">C</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">ertain factors and circumstances could result in changes in the timing of recognition of our performance obligations as revenue and the amounts ultimately recognized.</span></ix:footnote></div></div></ix:nonNumeric></div><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contracts Assets and Liabilities</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of customer invoicing and recognition of revenue using the POC method may occur at different times. Customer invoicing is generally dependent upon contractual billing terms, which could provide for customer payments in advance of performing the work, milestone billings based on the completion of certain phases of the work, or billings when services are provided. Revenue recognized in excess of amounts billed is reflected as contract assets on our Balance Sheet, or to the extent we have an unconditional right to the consideration, is reflected as contract receivables on our Balance Sheet. Amounts billed in excess of revenue recognized, and accrued contract losses, are reflected as contract liabilities on our Balance Sheet. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b5828931-6c8d-4240-862c-1baa1052cb7c" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" escape="true" continuedAt="F_b5828931-6c8d-4240-862c-1baa1052cb7c_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information with respect to contracts that were incomplete at December 31, 2023 and 2022, is as follows (in thousands):</span></ix:nonNumeric></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_b5828931-6c8d-4240-862c-1baa1052cb7c_1"><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:16.403%;"/>
        <td style="width:1%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:16.403%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Costs incurred to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2d3a2d51-8bcf-4ffc-8a81-002233a373d5" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:CapitalizedContractCostGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">117,274</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ab32f595-87c1-4d9b-830f-29124e3e2695" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CapitalizedContractCostGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">112,693</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Estimated losses incurred to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_04b944a2-1dea-44c6-90bf-aa5742f6e7e9" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:CapitalizedContractCostEstimatedProfitLossesIncurredToDate" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,735</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f0e735ba-c216-4930-98cd-96565d89a20a" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:CapitalizedContractCostEstimatedProfitLossesIncurredToDate" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,610</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Sub-total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0ecc54d7-e559-43e4-98c7-71f089a0cb5f" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:CapitalizedContractCostNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">104,539</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_78c47418-66c0-4b8c-87e4-9f29deb9dca8" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:CapitalizedContractCostNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">100,083</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Billings to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_76e77ffa-54dc-4487-8e82-0bf7bf8c3f8b" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:CapitalizedContractCostBillingsToDate" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">107,270</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9aa40012-a304-4d79-bb9c-8472e40e8a99" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:CapitalizedContractCostBillingsToDate" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">103,440</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c8c07fb8-5a32-48b4-919c-6f60a1045062" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:ContractWithCustomerAssetLiabilityNet" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,731</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_64404173-6bd0-43fd-9b08-f587dede7ee0" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:ContractWithCustomerAssetLiabilityNet" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,357</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The above amounts are included within the following captions on our Balance Sheet at December 31, 2023 and 2022 (in thousands):</span></p><p style="margin-left:4.533%;text-indent:-3.17%;padding-left:2.933%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:16.403%;"/>
        <td style="width:1%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:16.403%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract assets</span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">&#160;(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6c557e22-e38b-4cbb-ad0b-2c4c7ad33835" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:ContractWithCustomerAssetNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,739</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_939cf3a2-6c65-413e-8a78-797b4020c621" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:ContractWithCustomerAssetNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,839</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract liabilities </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3), (4), (5)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:ContractWithCustomerLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,470</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:ContractWithCustomerLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,196</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c4ee2c99-b55b-4310-a055-0d030fe8c400" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:ContractWithCustomerAssetLiabilityNet" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,731</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f0cb1f05-a348-4f9f-a3bc-50c095667403" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:ContractWithCustomerAssetLiabilityNet" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,357</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_e8374915-ba70-493e-91c8-eb97ee832099" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract assets from December 31, 2022 to December 31, 2023, was primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division.</span></ix:footnote></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_18168d38-3547-41e1-b53d-3da59ac3541d" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract assets at December 31, 2023 and 2022, excluded $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_50bc58c7-2012-4f32-835a-54d820cc1b29" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">6.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ef73b8c1-ef1d-4b39-8c3b-0e844d434188" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">3.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, associated with revenue recognized in excess of amounts billed for which we have an unconditional right to the consideration. Such amounts are reflected within contract receivables. The increase from December 31, 2022 to December 31, 2023, was primarily due to a customer for our Services Division.</span></ix:footnote><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_09cb6c4d-b5f1-4b7c-93a5-347cbaa6f4af" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract liabilities from December 31, 2022 to December 31, 2023, was primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division.</span></ix:footnote><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(4)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_10e914ca-b1da-4fb2-ac97-023706bca01e" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during 2023 and 2022, related to amounts included in our contract liabilities balance at December 31, 2022 and 2021, was $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e7a237e9-f7f9-4dfd-a6fe-9d05b556e28d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">6.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_96cf1b20-0624-4f91-917f-00552c709eba" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span></ix:footnote><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">  </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(5)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_dc1489b8-e89d-4c52-b4b2-784e65fbc1f2" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_69cb73cf-78f5-4e8f-a9a0-92c37b8b8a07" contextRef="C_b19e0574-d5db-429e-b9ea-18e4968c8435" name="gifi:ContractWithCustomerLiabilityAccruedContractLossesCurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_649f6ed4-161c-4d99-887f-63451ab9475e" contextRef="C_bc4a4886-4017-4268-826f-76e476050225" name="gifi:ContractWithCustomerLiabilityAccruedContractLossesCurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, primarily related to projects for our Shipyard Division. See &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of our accrued contract losses. </span></ix:footnote></div></div></ix:continuation></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Significant Customers</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c776ed5d-0be1-4335-b485-0b741fcf5fd5" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:DisclosureOfSignificantCustomersTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes revenue for customers that accounted for 10% or more of our consolidated revenue for 2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:47.57%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:22.256%;"/>
        <td style="width:1%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:22.256%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer A</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_32810351-34ce-4fcb-b941-8e6eb136d7f3" contextRef="C_e63efff0-f5d7-48b3-acc7-c3aa44976a25" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">70,497</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3b7105df-62fd-4e5d-9176-657287ffa95d" contextRef="C_de08cc50-172f-4488-a7cb-8e8aa181d563" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">54,257</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer B</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5442c9a2-c59d-4140-9d9a-cf35f70dc42d" contextRef="C_7c189e04-103c-4e94-8dd4-b12fb43dc0b7" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,956</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">*</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer C </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5672939d-5663-4220-a7fd-741e60520ffa" contextRef="C_0544c597-1d08-4a4e-8030-ada920dc1c4a" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,498</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cf0f42d6-c3c3-4cf5-91ea-56be196a9482" contextRef="C_9b792a7c-8c0c-4ee0-a691-f444b31ac32c" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,635</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer D </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6eddde0d-af50-4973-9a3e-13f4f119a42e" contextRef="C_0cfadcca-d5b0-49a0-adae-50a0fa885be4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,481</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">*</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:4.133%;text-indent:-3.602%;padding-left:3.333%;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(*)	The customer revenue was less than </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f02d7d7e-0d45-4906-8d02-95669f2e3a6c" contextRef="C_c1ff8c32-ee9b-4094-a536-3b612f449a7f" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">10</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% of consolidated revenue for the year.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><ix:footnote id="FNT_32a96312-6aa1-4395-8743-6f986704f2c7" xml:lang="en-US"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">For 2023, these customers accounted for </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2236f5cc-f863-439e-865a-50beda13a18e" contextRef="C_0544c597-1d08-4a4e-8030-ada920dc1c4a" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_f01e477a-58a2-4e56-a7ca-7765257770d5" contextRef="C_0cfadcca-d5b0-49a0-adae-50a0fa885be4" name="us-gaap:ConcentrationRiskPercentage1" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">10</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% or more of our consolidated revenue due to lower revenue for the period associated with a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_008e7f57-55d6-4e55-a62b-60ce8e9326df" contextRef="C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc" name="us-gaap:LitigationSettlementExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">32.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division, resulting from the resolution of our MPSV Litigation. See </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below and Note 7 for further discussion of the charge and resolution of our MPSV Litigation.</span></ix:footnote></div></div></ix:nonNumeric></div><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Allowance for Doubtful Accounts and Credit Losses</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our provision for bad debts and credit losses is included in other (income) expense, net on our Statement of Operations. For 2023, we recognized income of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ceb0f2fe-6a86-499c-b832-6edc55677864" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> m</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">illion associated with revisions to our allowance for doubtful accounts and credit losses, and for 2022, changes were not significant. Our allowance for doubtful accounts and credit losses at December 31, 2023 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0754e1cf-65bd-4067-94c8-b84ff6d8998d" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, and it was not significant at December 31, 2022. We recorded a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_04f82a31-7073-4ab7-8f55-b9ede388ddcf" contextRef="C_dd42000e-614a-4544-9fb0-3702fb259f77" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million increase to beginning accumulated deficit as of January 1, 2023, in connection with our adoption of ASU 2016-13. We had no significant write-offs or recoveries of previously recorded bad debts during 2023 or 2022. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;New Accounting Standards&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Note 1 for further discussion of our adoption of ASU 2016-13.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Variable Consideration</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For 2023 and 2022, we had no material amounts in revenue related to unapproved change orders, claims or incentives, other than amounts related to the resolution of our MPSV Litigation discussed further below. However, at December 31, 2023 and 2022, certain active projects within our Shipyard Division reflected a reduction to our estimated contract price for liquidated damages of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_231592eb-c8a7-4190-a6bd-ae220fe94fe5" contextRef="C_b19e0574-d5db-429e-b9ea-18e4968c8435" name="gifi:RevenueVariableConsiderationContractPriceReduction" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8c2c4720-c2d7-47e7-b9fa-c305c34f29d7" contextRef="C_bc4a4886-4017-4268-826f-76e476050225" name="gifi:RevenueVariableConsiderationContractPriceReduction" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Changes in Project Estimates</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We determine the impact of changes in estimated margins on projects for a given period by calculating the amount of revenue recognized in the period that would have been recognized in a prior period had such estimated margins been forecasted in the prior period. The total impact of changes in estimated margins for a project as disclosed on a quarterly basis may be different from the applicable year-to-date impact due to the application of the POC method and the changing progress of the project at each period end. Such impacts may also be different when a project is commenced and completed within the applicable year-to-date period but spans multiple quarters.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Estimates for 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2023, we recorded a charge of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_57b1bc0a-20b9-478e-8dc7-f3c6331dee1c" contextRef="C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc" name="us-gaap:LitigationSettlementExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">32.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division, reflected as a reduction to revenue, resulting from the resolution of our MPSV Litigation. See Note 7 for further discussion of the charge and resolution of our MPSV Litigation. In addition, during</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> 2023,</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> significant changes in estimated margins on projects negatively impacted operating results for our Shipyard Division by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d471fc5f-c71d-44f6-948d-7cce619314b7" contextRef="C_794803ce-d97e-4446-ba7a-1a2fd69d3f78" name="gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The changes in estimates were associated with the following:</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Seventy-Vehicle Ferry Project</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2023, we completed, delivered and received final customer acceptance of our seventy-vehicle ferry. D</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">uring 2023, our operating results were negatively impacted by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_803f9e51-20fd-4d17-8430-6ddb1ef4057b" contextRef="C_9fd17654-bce1-4d02-9a97-4efc13f49f07" name="gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from changes in estimates on the project, associated primarily with increased materials and subcontracted services costs, duration related costs due to extensions of schedule and net reductions to contract price. The cost impacts were primarily due to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">delays in the receipt of certain equipment that required replacement and subcontractor delays. The contract price impacts were primarily due to a price reduction resulting from the required replacement of the vessel&#8217;s propeller blades (discussed further below), offset partially by price increases due to favorable resolution of customer change orders and the customer&#8217;s agreement to forego a portion of previously forecasted liquidated damages.</span></div></div><p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As discussed in our previous quarterly filings, in connection with the delivery and commissioning of the vessel in the second quarter 2023, corrosion on the propeller blades was identified and the customer determined that replacement of the propeller blades will be required. The customer has agreed to directly procure the new propeller blades and take responsibility for future installation of the blades once received. Further, the customer agreed to bear a portion of the cost of the new propeller blades, with the remainder borne by us through the aforementioned contract price reduction.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, the project was in a loss position and the warranty period for the vessel ends in the third quarter 2024. The project would experience further losses if we incur unanticipated warranty costs on the vessel.</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Forty-Vehicle Ferry Projects</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022, we substantially completed and delivered the first of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a76b284e-1532-40b9-810c-4f6e003b6e07" contextRef="C_3fc4f133-468c-4e2a-828c-774b0945c0ca" name="gifi:NumberOfVehicleFerryProjects" unitRef="U_Vechicle" decimals="INF" format="ixt-sec:numwordsen">two</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> forty-vehicle ferries, and during 2023, we received final customer acceptance of the ferry. Further, during 2023, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">we substantially </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">completed and delivered our second forty-vehicle ferry, and we anticipate final customer acceptance of the ferry in March 2024. During 2023, our operating results were negatively impacted by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7c539acf-3887-4d3a-87b1-bdf2b3eec0b9" contextRef="C_a65e9edb-0747-45b3-8cb2-47af918e5b15" name="gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from changes in estimates on the projects, associated primarily with (i) warranty costs on the first vessel, and (ii) increased materials and subcontracted services costs and duration related costs due to extensions of schedule, including forecast liquidated damages, on the second vessel. The impacts for the second vessel were primarily due to delays in the receipt of certain equipment that required replacement and subcontractor delays. </span></div></div><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As discussed in our 2022 Financial Statements and subsequent quarterly filings, as a result of design deficiencies, we experienced rework, construction and commissioning challenges on the </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d72f3818-8bbe-405d-8beb-c860a2caffe3" contextRef="C_a65e9edb-0747-45b3-8cb2-47af918e5b15" name="gifi:NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" unitRef="U_Vechicle" decimals="INF" format="ixt-sec:numwordsen">two</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> ferries, resulting in forecast cost increases and liquidated damages, and the previous need to fabricate a new hull for the second vessel. Accordingly, during 2021, we submitted claims to our customer, and subsequently filed a lawsuit, to extend our project schedules and recover the cost impacts of the design deficiencies. The customer denied all liability. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our forecasts at December 31, 2023 do not reflect potential future benefits, if any, from the favorable resolution of the lawsuit and we can provide no assurance that we will be successful recovering previously incurred costs.</span></p><p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, the projects were in a loss position and the warranty period for the first vessel ends in the second quarter 2024 and the warranty period for the second vessel is anticipated to end in the first quarter 2025. The projects would experience further losses if we incur unanticipated warranty costs on the vessels.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Estimates for 2022</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022,</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> significant changes in estimated margins on projects negatively impacted operating results for our Shipyard Division by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a748bf4d-f8f2-4bf8-a69d-8a7b399ee86c" contextRef="C_91e23f16-98d0-4e7b-8b3b-2b15f08dcf1d" name="gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The changes in estimates were associated with the following:</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:6pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Seventy-Vehicle Ferry Project</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022, our operating results were negatively impacted by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_46c02f83-4e08-4c98-8a49-87dd28552fbb" contextRef="C_7d6fc82f-38dc-4a2a-a2ba-042ac17cc7e4" name="gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from changes in estimates on our seventy-vehicle ferry project, associated primarily with increased materials and subcontracted services costs and duration related costs due to extensions of schedule, including forecast liquidated damages. The impacts were primarily due to equipment issues identified during testing, subcontractor delays and the U.S. Coast Guard&#8217;s determination that the vessel&#8217;s wood consoles, contractually specified by the customer, were required to be replaced or modified with metal consoles.  </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Forty-Vehicle Ferry Projects</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022, our operating results were negatively impacted by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_29b1e3d6-c5b3-4645-a7bb-d77c2b369319" contextRef="C_3fc4f133-468c-4e2a-828c-774b0945c0ca" name="gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from changes in estimates on our second forty-vehicle ferry project, associated primarily with increased subcontracted services and craft labor costs and duration related costs due to extensions of schedule, including forecast liquidated damages. The impacts were primarily due to structural design deficiencies for the vessel (discussed further above), which resulted in deflection issues within the plating of the vessel. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">   </span></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other Operating and Project Matters</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_68735a75-4047-4226-94d4-0e2c9b707003" contextRef="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768" name="gifi:ImpactOfHurricaneIdaDescription"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2021, our operations were impacted by Hurricane Ida, which made landfall near Houma, Louisiana as a high-end Category 4 hurricane, causing debris and damage to our buildings and equipment at our Houma Facilities. Our insurance coverages in effect at the time of the storm generally specified coverage amounts for each of our buildings (including contents) and major equipment.  </span></ix:nonNumeric></span><span style="font-size:10pt;font-family:Times New Roman;"></span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabrication Division Impacts </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; During 2023 and 2022, we received insurance payments of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_76c425f2-924b-483c-a543-6243745f1db3" contextRef="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768" name="us-gaap:ProceedsFromInsuranceSettlementOperatingActivities" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9d2e1d71-aaed-409f-b96e-1b41ca705f0c" contextRef="C_9d017577-455b-4de6-8fba-e0c38d593225" name="us-gaap:ProceedsFromInsuranceSettlementOperatingActivities" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">13.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, from our insurance carriers associated with interruptions to our operations and damage to buildings and equipment</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Further, in the fourth quarter 2023, we finalized all claims associated with our insurance coverages, and at December 31, 2023, we had total insurance receivables on our Balance Sheet of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9168ef0a-fc30-4407-995e-36d5006d0842" contextRef="C_001c1d83-4997-49ee-94c6-6038db485db0" name="us-gaap:InsuranceSettlementsReceivableNoncurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, all of which was collected in January 2024. The classification of insurance proceeds within our Statement of Cash Flows is based on our use or intended use of the proceeds. Proceeds used or intended to be used for repairs that are not deemed to be capital in nature, and proceeds associated with interruptions to our operations, are reflected within operating activities. Proceeds used or intended to be used for repairs that are deemed capital in nature, or proceeds in excess of repair costs, are reflected within investing activities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of payments from our insurance carriers often differed from when we incurred the applicable repair and cleanup costs, and accordingly, we accounted for such differences in timing as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">To the extent we incurred repair costs in excess of insurance proceeds received to date, we recorded an insurance receivable when we believed such amounts were probable of recovery under our insurance policies.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">To the extent proceeds received exceeded repair costs incurred to date, we recorded an insurance gain as we did not have an obligation to perform further repair activities. Charges were recorded in subsequent periods to the extent such proceeds received were used for repair activities that were not deemed to be capital in nature. </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Insurance deductibles, clean-up costs and uninsured losses were expensed. </span></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Based on the above, during 2023 and 2022, we recorded gains of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_00956d41-f3b1-4f9e-b301-d66979ae71e7" contextRef="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768" name="gifi:GainLossOnInsuranceRecovery" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (including $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a1c86d84-b1df-4a5a-9522-cc2ea65f6555" contextRef="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768" name="gifi:GainOnInterruptionsInsuranceRecovery" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million related to our business interruption coverage) and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_29ad433f-17cc-416a-8494-edf11536b914" contextRef="C_9d017577-455b-4de6-8fba-e0c38d593225" name="gifi:GainLossOnInsuranceRecovery" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">7.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (including $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_307b7a45-9277-4706-9fab-0c28438b101f" contextRef="C_9d017577-455b-4de6-8fba-e0c38d593225" name="gifi:GainOnInterruptionsInsuranceRecovery" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">3.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million related to our business interruption coverage), respectively, related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida. The gains are included in other (income) expense, net on our Statement of Operations and are reflected within our Fabrication Division.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">    </span></p><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Shipyard Division Impacts </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In addition to damage to our Houma Facilities, the storm resulted in damage to one of our forty-vehicle ferry projects</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the multi-purpose supply vessels (&#8220;MPSV(s)&#8221;) and associated equipment that were previously in our possession and subject to our MPSV Litigation, and certain bulkheads where the vessels were moored.  During 2023 and 2022, we recorded charges of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6ce6417f-caec-4def-be2d-c495794f7317" contextRef="C_b5722d4b-25c9-4479-aa56-31845020b7af" name="gifi:ChargesRelatedToDeductiblesTotal" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1c26a799-5d71-4f9f-98f9-e77120ce3d9f" contextRef="C_92e058ee-fa6b-41c3-b3d6-f9722e8f48d1" name="gifi:ChargesRelatedToDeductiblesTotal" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, related to actual costs incurred. The charges are included in other (income) expense, net on our Statement of Operations and are reflected within our Shipyard Division. See Note 7 for further discussion of the resolution of our MPSV Litigation.</span></p></ix:nonNumeric></div>
  <div><ix:nonNumeric id="F_5a408e47-75a6-4d8b-8af8-276c935f8fba" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3. LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_6e492bfb-fca8-426e-8b51-c47569c81b3d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:PropertyPlantAndEquipmentTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment consisted of the following at December 31, 2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:57.5%;"/>
        <td style="width:1.4%;"/>
        <td style="width:12.78%;"/>
        <td style="width:1.34%;"/>
        <td style="width:1%;"/>
        <td style="width:10.82%;"/>
        <td style="width:1%;"/>
        <td style="width:1.34%;"/>
        <td style="width:1%;"/>
        <td style="width:10.82%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Estimated</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Useful Life</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(in Years)</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Land</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_76eb6d06-e32b-4ff3-ad8c-df2f949fc91f" contextRef="C_d4e6b6b0-e516-4647-a511-ade3e6406508" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,103</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0fc1421a-31dd-4fe7-b35a-dd41647875b7" contextRef="C_b6b8c9a8-1292-4c9f-a653-f5ce9ac89023" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,376</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Buildings</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><ix:nonNumeric id="F_18189664-553d-4144-a51c-66093e08094c" contextRef="C_72022df9-790b-49f8-8bfc-00431481897d" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><ix:nonNumeric id="F_bfb2140a-d213-4d5e-9deb-2851d7076001" contextRef="C_6f9a329b-4226-4d40-989b-b48f609f1c3f" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">25</span></ix:nonNumeric></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c830b1ed-d4ea-4b6a-9504-68afc69a639c" contextRef="C_2be31468-ff16-44f6-86af-8e8e108a34ad" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,232</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_042bd672-67aa-4cb5-af56-70a6354e9f33" contextRef="C_4e668483-9363-48fa-b143-7dd0b392d882" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">25,584</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Machinery and equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><ix:nonNumeric id="F_93557f38-a96b-44da-aa76-647abc159209" contextRef="C_6d4194db-103e-4db0-8ec6-a3bd25c4c447" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><ix:nonNumeric id="F_f0d82eb6-0293-4595-bfc6-50b9e254a402" contextRef="C_fe5c1386-484f-47ae-878a-5f3c0b7221e8" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span></ix:nonNumeric></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3f3314fc-942c-4db4-9444-097267d769f3" contextRef="C_314657af-8da0-44b1-a2fe-d29bf7c32141" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">64,035</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b3cc01af-0881-4401-849b-98a05e253488" contextRef="C_7300738f-49f5-4cac-9ef7-26cdeedeee9a" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">67,851</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Furniture and fixtures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><ix:nonNumeric id="F_bd610548-a0ba-4718-907f-3e4a0b279ae1" contextRef="C_410c80b6-ccc1-4936-8966-f3e944d59b81" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><ix:nonNumeric id="F_86b568cf-7192-40e1-acd3-d582541b340d" contextRef="C_87a8f7e1-0291-4b40-a041-0eb5b58b8aa9" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5</span></ix:nonNumeric></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c143e0c6-af89-424c-93af-baa01bccba80" contextRef="C_ca3865b9-b250-441a-9831-67ce11a94901" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">762</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cfda6f12-8279-401d-a763-fef9c13e67d6" contextRef="C_28f7d076-30a1-4561-9acd-820691c07dc5" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">994</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Transportation equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><ix:nonNumeric id="F_cbc5a37e-d6e2-4001-bbaf-a9f568acbcb6" contextRef="C_4842ef49-1790-4f0b-b666-da169d6f4753" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><ix:nonNumeric id="F_daa6856e-2112-4453-b40b-95672c5e6237" contextRef="C_fbe3999c-ec84-4b20-b7a8-cddd6373ae5d" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5</span></ix:nonNumeric></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e2998fe4-6b28-422e-8696-6234a1261fae" contextRef="C_0d8b698d-79c5-46e8-8ad9-490b93e810fc" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,369</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b669b274-3da5-4d45-957d-e3520272fc9b" contextRef="C_c7a6b99c-ab2a-4615-a17e-cbca4f0eabab" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,361</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Improvements</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><ix:nonNumeric id="F_6e805ad0-eb3d-4f5b-aed6-3ea609993846" contextRef="C_95eb78d7-d965-42b9-a3b5-ffafe58b4ab6" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span></ix:nonNumeric></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_acf8d282-9d1e-4e04-a48c-a2525f7d62ec" contextRef="C_95eb78d7-d965-42b9-a3b5-ffafe58b4ab6" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,277</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8a5c8e4e-7e11-4e74-a57d-d6b71d6eafc2" contextRef="C_699b86a3-de20-4d0d-9749-221991b9bfb8" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,246</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Construction in progress</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3c92cbbb-edd2-4676-9cd8-89216da779a7" contextRef="C_dcfb10ab-a2a0-4052-b499-ab340825ac79" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,060</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b2c0e6ce-4667-4c81-9631-7521e1f0d829" contextRef="C_ce912fd4-11a3-42fe-b755-4418d8982304" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,881</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total property, plant and equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5553aa99-80cf-4c02-aba1-97ae8f1ad71e" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">107,838</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9372e6d1-350c-4ddf-aafa-71b5ff476111" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:PropertyPlantAndEquipmentGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">127,293</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated depreciation</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f997c0b0-fb26-44a6-84ee-1d4c27d38255" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">84,693</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d1ea6ff2-876a-4969-9bbc-fb4fafa09af0" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">96,139</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property, plant and equipment, net</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_51f54220-a484-4a7e-ab5c-6dce8df8254c" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,145</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6f559169-c345-45fd-b754-134917769089" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">31,154</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Depreciation expense for 2023 and 2022 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_66f62c18-7219-4184-a80a-60c94c393d41" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DepreciationAmortizationAndAccretionNet" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">4.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_84fe2d9b-e7c2-4a33-8726-8ba71aa4ebf3" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:DepreciationAmortizationAndAccretionNet" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">4.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In February 2024, we sold certain property of our Fabrication Division that was part of our Houma Facilities for</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cb3edafd-2d95-4e11-b2d4-a35dea4f3caf" contextRef="C_01ac159e-3c97-46af-b432-8dbdc656cd94" name="gifi:ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">8.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (net of transaction and other costs). The property sold was classified as an asset held for sale (&#8220;Houma AHFS&#8221;) on our Balance Sheet at December 31, 2023, and its carrying value was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0e4bf32d-5c20-4efc-b20a-e1852af47c47" contextRef="C_9e7cb61d-b813-42a4-aa1a-261cb783d9d5" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">5.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, which was less than its fair value based on the proceeds from its sale.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leased Facilities and Equipment</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_40c4b768-65ce-4a4d-9bd5-7971c0692791" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:LeaseDescription"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We lease certain office, warehouse and operating facilities under long-term lease arrangements that expire at various dates through </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">October 2027</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, some of which include renewal options ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_a8a89eb0-e986-42d3-855c-14bcaa1d2563;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">one</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d609a127-4df4-4d71-9164-9683dd8c1e67" contextRef="C_18924d07-f6c4-4e2b-915b-55f0f0b7d733" name="us-gaap:LesseeOperatingLeaseRenewalTerm" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20 years</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> At </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, our </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b8306089-f1e0-427d-b2eb-9198d2ff7286;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">lease asset</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_1145cb82-332f-4336-832e-9a7b7c5bd883;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">current lease liability</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_04f8f0bf-472b-4379-b781-04b0610392b1;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">long-term lease liability</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b042ae1f-6bba-4a51-8ece-6f6d27e43980" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4dd43051-5c7d-401e-91a9-e5d82fa4a619" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:OperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_41554dbe-bf62-4014-970a-4abc66842f32" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. Our lease obligations include any renewal options that we intend to exercise. </span><span><ix:nonNumeric id="F_65077245-a654-4608-8af0-2c4526891d15" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" escape="true" continuedAt="F_65077245-a654-4608-8af0-2c4526891d15_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future minimum payments under leases having initial terms of more than twelve months are as follows (in thousands):</span></ix:nonNumeric></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_65077245-a654-4608-8af0-2c4526891d15_1" continuedAt="F_65077245-a654-4608-8af0-2c4526891d15_2"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.22%;"/>
        <td style="width:1.9%;"/>
        <td style="width:1%;"/>
        <td style="width:15.88%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Minimum<br/>Payments</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2024</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7e220390-631e-47e4-8603-abcb7accced1" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" unitRef="U_USD" scale="3" decimals="-3">884</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2025</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_762a0695-3d49-48b4-a410-a848b0d501c2" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" unitRef="U_USD" scale="3" decimals="-3">424</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2026</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ab880ec1-4c67-4c35-8551-4fabfae80584" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" unitRef="U_USD" scale="3" decimals="-3">76</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2027</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_253e0388-a04f-4697-903b-ecd75aaaa726" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">64</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease payments</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b8202288-17aa-4719-99f1-62b915f8e0d2" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,448</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Less: interest</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5ed52b55-5308-413d-8065-0c7db3ea6c52" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" unitRef="U_USD" scale="3" decimals="-3">99</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Present value of lease payments </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_55a3bdf6-02b0-48b2-b4b8-a49a6473403b" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:OperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,349</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">During 2022, we entered into a sublease arrangement with a third-party for the remainder of our corporate office lease, which will partially recover our lease costs for the office for the duration of the lease. In connection therewith, we recorded an impairment charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_248f0762-b4fa-4ece-984a-6dcae2644eb8" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:AssetImpairmentCharges" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with the underlying right-of-use asset for the corporate office lease. The impairment is included in other (income) expense, net on our Statement of Operations and is reflected within our Corporate Division.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The discount rate used to determine the present value of our lease payments was based on the interest rate on our LC Facility adjusted for terms similar to that of our leased properties. At December 31, 2023, our weighted-average remaining lease term was approximately </span><span style="font-size:9pt;font-family:Times New Roman;"><ix:nonNumeric id="F_85d4396b-6834-4208-862f-7dd590cebf67" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LesseeOperatingLeaseTermOfContract" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1.9</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> years and the weighted-average discount rate used to derive our lease liability was </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_dbe740df-a1d1-497d-8f08-13b3d46a1cda" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:LesseeOperatingLeaseDiscountRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">.</span></div></div><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17</span></p></div>
       <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude></ix:continuation></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span><ix:continuation id="F_65077245-a654-4608-8af0-2c4526891d15_2"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">L</span></ix:continuation></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ease expense for our leased facilities and equipment, which includes lease asset amortization expense and expense for leases with original terms that are twelve months or less, for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_be83b0a7-9f29-4b0d-adfc-84817b07622c" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:OperatingLeaseExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c474f674-4ad9-41e1-901f-57c09f77caeb" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:OperatingLeaseExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. Cash paid for leases for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7d22f088-b19a-4784-a60a-e3f026e646c9" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:OperatingLeasePayments" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d03526e2-c734-43e6-9bb9-2fb77fd51c3a" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:OperatingLeasePayments" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. Certain of our leases are subject to subleases with third parties. Sublease income for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_902c119e-a898-43c5-93cf-33365688e7ed" contextRef="C_74d4f2b2-4a54-47f5-9e9f-ed053b426e3b" name="us-gaap:SubleaseIncome" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7d6ab6f8-cb05-4ee1-89a9-3def2c3d4677" contextRef="C_a4fb150a-2806-4d20-a9b8-e30b9e66a2df" name="us-gaap:SubleaseIncome" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, and is </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included in other (income) expense, net on our Statement of Operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2022, we sold a purchase option for $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a8793877-9a55-439a-928f-c3db36439c40" contextRef="C_c53b35c5-eb37-49cf-acb6-48c5c967a1d0" name="gifi:ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (net of transaction and other costs) that was entered into in connection with a previous acquisition that provided us with a right to buy a leased fabrication and operating facility for a nominal amount. </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_70bef2dd-59e4-468e-9f8f-c38183e37b52" contextRef="C_c53b35c5-eb37-49cf-acb6-48c5c967a1d0" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" unitRef="U_USD" decimals="INF" format="ixt-sec:numwordsen">No</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> material gain or loss was recognized on the sale of the purchase option as the net proceeds approximated the carrying value of the underlying right-of-use asset associated with the leased facility. The net proceeds are included in proceeds from sale of property and equipment on our Statement of Cash Flows.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill and Other Intangible Assets</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Goodwill</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; As discussed in Note 1, goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). We perform our annual impairment assessment during the fourth quarter of each year based on balances as of October 1. At October 1, 2023, our Services Division represented our only reporting unit. During 2023, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_05c5387e-5c81-428d-89e3-c7bcc1b1a847" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:GoodwillImpairmentLoss" unitRef="U_USD" decimals="INF" format="ixt-sec:numwordsen">no</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> indicators of impairment and had no changes to our reporting unit. We performed a qualitative assessment of our goodwill, and determined that it was not more likely than not that the fair value of our reporting unit was less than its carrying value. Accordingly, a quantitative assessment was not deemed necessary.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other Intangible Assets</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_4e8816ac-b90a-438a-a229-dbe1be57fa28" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" escape="true" continuedAt="F_4e8816ac-b90a-438a-a229-dbe1be57fa28_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangible assets were derived from the estimated fair value of existing underlying customer relationships associated with a previous acquisition and consisted of the following at December 31, 2023 and 2022 (in thousands):</span></ix:nonNumeric></span></p><div style="font-size:9pt;font-family:Times New Roman;"><ix:continuation id="F_4e8816ac-b90a-438a-a229-dbe1be57fa28_1">
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:16.403%;"/>
        <td style="width:1%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:16.403%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_caa3ebd7-81d4-4d5c-9389-1ab51746afb1" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:FiniteLivedCustomerRelationshipsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">996</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_282aa45d-ce20-4c8b-997a-ebd3678c02c9" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:FiniteLivedCustomerRelationshipsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">996</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated amortization</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_86e896a0-8bf9-439a-bf81-bb189e73e57f" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">296</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_46ed2eaa-6c18-4ea3-8a95-e8eec8667f50" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">154</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets, net</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_16880c38-23e9-482f-abb3-2a32185b2299" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">700</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3e4968aa-da53-4401-bc9d-7dca364de6ee" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:FiniteLivedIntangibleAssetsNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">842</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:continuation></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our intangible assets have estimated lives of </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_fb59d7e6-4398-477f-ae13-ffcb4087e59b" contextRef="C_8caa51a3-a9e6-46a9-b8a6-7e8b2d1e0f9b" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">seven years</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and amortization expense for 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e8f9051e-9374-49c6-bd5e-5ebe035970de" contextRef="C_934b968b-5d1d-469e-a030-b99ef2258abd" name="us-gaap:AmortizationOfIntangibleAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_df782120-cd10-41f5-ba20-1657b59146d1" contextRef="C_585ab07a-4a7e-4414-848f-d778e266a6e2" name="us-gaap:AmortizationOfIntangibleAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. Amortization expense is estimated to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6294b0bf-a14f-4c57-8498-04b2281469d5" contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_fec03649-a3c8-4330-99e0-d96ebcf2e935" contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_df3ad5d3-0fd4-406a-b0c9-a1b4a5ee9ca9" contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_2fe9e7b0-eba1-432a-a9dd-918dc2aed4eb" contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_9cbbe90b-efb7-4f22-84fb-39ba27cc8817" contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a5d4edea-2570-4d0c-9be0-69dd2224fddb" contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_4246f58e-66c6-470c-b559-852e05a58cf5" contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_44ed5efa-e432-45fa-a568-5ecc5e9dd299" contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_1751a663-844f-4e46-aabf-bd67b240b430" contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_5e3f1bb5-4a2d-4e42-9551-dbaf4aed4b3b" contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.2</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of 2024, 2025, 2026, 2027 and 2028.</span></p></ix:nonNumeric></div>
  <div><ix:nonNumeric id="F_5868346f-b29c-4ae9-860d-99e1dd5a49bd" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DebtDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4. CREDIT FACILITIES AND DEBT</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">LC Facility</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On May </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5, 2023, we amended our LC Facility with Whitney Bank to reduce our letters of credit capacity from $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_eba5226d-3275-4f71-a09e-1df49b1a0515" contextRef="C_af1abd01-f093-411d-bbb8-3fedcc55112c" name="us-gaap:DebtInstrumentDecreaseForgiveness" unitRef="U_USD" scale="6" decimals="INF" format="ixt:num-dot-decimal">20.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_878c2075-c66e-4293-9198-a81946ee3922" contextRef="C_c4e567e9-72ad-4ae8-b652-4a1f9694428a" name="us-gaap:DebtInstrumentDecreaseForgiveness" unitRef="U_USD" scale="6" decimals="INF" format="ixt:num-dot-decimal">10.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, subject to our cash securitization of the letters of credit, and extend the maturity date to </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8fd57d9c-3b8e-40b8-a01c-30ac3bc986cc" contextRef="C_12854efa-a02d-4d65-b817-b5e45dc6252b" name="us-gaap:DebtInstrumentMaturityDate" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Commitment fees on the unused portion of the LC Facility are </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5d06b6c2-0fdb-4464-8d7c-5144962d3113" contextRef="C_78af73f2-e512-48ad-a168-e1a08d677b0b" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">0.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum and interest on outstanding letters of credit is </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_bd62c739-f0b4-4e89-8701-5377962ac015" contextRef="C_7093543c-c276-4e9c-89e1-84bdbfc16b9d" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">1.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum. At December 31, 2023, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c423c02e-670b-425f-854e-be10441e0298" contextRef="C_b86efaab-ab97-4ab9-9b25-9a1aa5b52a98" name="us-gaap:LettersOfCreditOutstandingAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of outstanding letters of credit under the LC Facility. See Note 7 for further discussion of our letters of credit and associated security requirements.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Surety Bonds</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We issue surety bonds in the ordinary course of business to support our projects. At December 31, 2023, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9df472d4-2aaa-4b1e-bbe9-64525986184d" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:SuretyBonds" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">52.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of outstanding surety bonds, of which</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_77cadf49-e57b-4f4d-a4dc-785369f6823d" contextRef="C_ebe93e40-798e-4e52-a220-9e5adb2036a6" name="gifi:SuretyContractsOfInsuranceCoverages" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">45.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million relates to our Ferry Projects for our Shipyard Division and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_52b4c877-23c2-45b4-bd46-d05796071991" contextRef="C_4eeb4eff-4542-494a-b131-7ceacf00ca5c" name="gifi:SuretyContractsOfInsuranceCoverages" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">6.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million relates to our Fabrication Division contracts and certain of our insurance coverages. See Note 7 for further discussion of our surety bonds and related indemnification obligations.</span></p><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">18</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Note Agreement</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the resolution of our MPSV Litigation and the Settlement Agreement, on November 6, 2023, we entered into a promissory note (&#8220;Note Agreement</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8221;) with one of our Sureties (Fidelity &amp; Deposit Company of Maryland (&#8220;FDC&#8221;) and Zurich American Insurance Company (together with FDC, &#8220;Zurich&#8221;)), pursuant to which we will pay Zurich $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_aaae0871-64a5-4c5c-85be-1d4bd9e6524c" contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58" name="us-gaap:DebtInstrumentIssuedPrincipal" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">20.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The Note Agreement bears interest at a fixed rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ed5ce5bb-8b79-4e82-8c99-98ef0bc716c9" contextRef="C_03079662-2439-4b58-8a31-640aaece2927" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">3.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum commencing on January 1, 2024, with </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d46035b4-a3cd-42d3-90c4-c601e807470d" contextRef="C_7f0465c4-4ee4-4598-8765-2eff635d681a" name="us-gaap:DebtInstrumentInterestRateTerms"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">principal and interest payable in </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d6c09994-b7b5-45e4-ab86-8f5224a4deaf" contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58" name="us-gaap:DebtInstrumentFrequencyOfPeriodicPayment"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> equal annual installments</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_22c6f9aa-d062-4b93-9a47-90208835d56a" contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58" name="us-gaap:DebtInstrumentPeriodicPayment" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, beginning on </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_07dde8e9-e397-4b66-8229-64e38b9c1675" contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58" name="us-gaap:DebtInstrumentMaturityDateRangeStart1" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2024</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and ending on </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_12a69dda-ed43-45f3-9a8f-5859a120d873" contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58" name="us-gaap:DebtInstrumentMaturityDateRangeEnd1" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2038</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b0e44dd7-dcf2-4c65-9b3e-29a941b4ba06" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" escape="true" continuedAt="F_b0e44dd7-dcf2-4c65-9b3e-29a941b4ba06_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future annual principal maturities under the Note Agreement are as follows (in thousands): </span></ix:nonNumeric></span><span style=""></span></p><div style="font-size:9pt;font-family:Times New Roman;"><ix:continuation id="F_b0e44dd7-dcf2-4c65-9b3e-29a941b4ba06_1">
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:81.156%;"/>
        <td style="width:1.92%;"/>
        <td style="width:1%;"/>
        <td style="width:14.923%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Principal<br/>Maturities</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2024</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4aed9120-b647-473d-8b0c-917908b8725a" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,075</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2025</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d94ff627-3275-4827-b649-eefd2df0625c" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,108</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2026</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2b728a2f-e3de-42a9-bfd0-1d0870006d4f" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,141</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2027</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_06a3ffd4-3c79-4637-ab31-12f271d58618" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,175</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2028</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e25db79a-ad20-4908-94a9-594493d942ba" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,210</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Thereafter</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_db9ce216-fdf9-44aa-a481-e771f041890c" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,291</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total maturities </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_65aeabaf-1112-4858-a4bf-8a826a7337b3" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:LongTermDebt" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">20,000</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, the estimated present value of the Note Agreement amount was $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_286075fb-86c2-4a33-91ea-e309faea5863" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:DebtInstrumentFaceAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">12.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million based on an estimated market rate of interest.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Due to the forbearance of interest until January 1, 2024, the effective rate on the Note Agreement is </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_184303c4-4610-4b14-8326-cd5d373a1a4e" contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">2.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% per annum. Accordingly, we accrued interest expense of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b6b35bf7-8288-480c-bde3-d11b91dbc425" contextRef="C_10d68f7a-a90d-431b-9e2a-da2598783742" name="us-gaap:IncreaseDecreaseInInterestPayableNet" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million during 2023 associated with the difference between the effective interest rate and stated interest rate on the Note Agreement.</span></div></div></ix:continuation></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Mortgage Agreement and Restrictive Covenant Agreement</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the receipt of a consent for the Shipyard Transaction from Zurich, we entered into a multiple indebtedness mortgage (&#8220;Mortgage Agreement&#8221;) and a restrictive covenant arrangement (&#8220;Restrictive Covenant Agreement&#8221;) with Zurich to secure our obligations for our MPSV projects and forty-vehicle ferry projects. The Mortgage Agreement encumbers all real estate associated with the Houma Facilities and includes certain covenants and events of default. In connection with the resolution of our MPSV Litigation and Note Agreement entered into with Zurich, the Mortgage Agreement was modified on November 6, 2023, to include a provision requiring that </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_863798e1-e261-456b-8435-9b6482fb3856" contextRef="C_7f0465c4-4ee4-4598-8765-2eff635d681a" name="gifi:PercentageOfProvisionRequiredFromProceedsReceived" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">50</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> percent of the net proceeds received by us in excess of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f2263a8f-ec54-4c96-ab1d-f3e0b518219c" contextRef="C_7f0465c4-4ee4-4598-8765-2eff635d681a" name="gifi:ProceedsFromSaleOfRealEstateRequiredToMakeProvision" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">8.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from the sale of any real estate of our Houma Facilities be used to make early payments on the principal balance under the Note Agreement. The Mortgage Agreement will terminate when the obligations and liabilities of Zurich associated with the outstanding surety bonds for the forty-vehicle ferry projects are discharged and the Note Agreement is repaid. The Restrictive Covenant Agreement precluded us from paying dividends or repurchasing shares of our common stock; however, in connection with the Settlement Agreement, the Restrictive Covenant Agreement was terminated. See Note 1 for further discussion of the Shipyard Transaction and Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Insurance Finance Arrangements</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the renewal of our property and equipment insurance coverages during 2022, and general liability insurance coverages during 2023, we entered into short-term premium finance arrangements (&#8220;Insurance Finance Arrangements&#8221;). The property and equipment arrangement totaled $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_946e1178-9c78-45e1-b094-3159f88f345a" contextRef="C_ebbc6533-3f2b-4249-918e-203985dcd36e" name="us-gaap:DebtInstrumentFaceAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million,</span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_75b31c8c-ed13-4400-a96b-de353a24b572" contextRef="C_4900e066-caa9-4f68-828d-0333a646f71e" name="us-gaap:DebtInstrumentPaymentTerms"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> payable in ten equal monthly installments through March 2023</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, with interest at a fixed rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_91e8c90a-c8fb-4667-ad05-dbc39ccdbe3b" contextRef="C_ebbc6533-3f2b-4249-918e-203985dcd36e" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">4.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum. The general liability arrangement totaled $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a393ed8d-3786-4c96-8426-aded7e1a8511" contextRef="C_edc61289-8f24-4a94-b7bc-9f0f39c7452c" name="us-gaap:DebtInstrumentFaceAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_4a03dbc2-b534-47cb-8322-ac335f73e37c" contextRef="C_8b8ad109-c04c-4dbc-a968-90a5cd94c64c" name="us-gaap:DebtInstrumentPaymentTerms"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">payable in eight equal monthly installments through August 2023</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, with interest at a fixed rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_56b0b7c8-471a-457f-8334-8db56a42d1ed" contextRef="C_edc61289-8f24-4a94-b7bc-9f0f39c7452c" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">6.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum. We considered the transactions to be non-cash financing activities, with the initial financed amount reflected within accrued expenses and other liabilities, and a corresponding asset reflected within prepaid expenses and other assets, on our Balance Sheet. During 2023 and 2022, we made principal payments of</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f2e94176-c4ed-4780-a51c-3f2b07fa17e4" contextRef="C_a9c3a5c7-b40e-4bc7-8b0c-5ea9f856437f" name="us-gaap:DebtInstrumentAnnualPrincipalPayment" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ac4d88c3-2507-475e-86a4-5026d3fed6b2" contextRef="C_e05504c2-0ed9-4fe1-9d89-16d723ffed13" name="us-gaap:DebtInstrumentAnnualPrincipalPayment" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, which have been reflected as a financing activity on our Statement of Cash Flows.</span></p></ix:nonNumeric></div>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">19</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_bf8b933b-2057-4d02-b20e-3d21b8ef4bfe" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncomeTaxDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5. INCOME TAXES</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income Tax (Expense) Benefit</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c184c080-98a2-4864-97b7-45958eb6946a" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of the U.S. federal statutory tax rate to our income tax (expense) benefit for 2023 and 2022, is as follows (in thousands):</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"/>
        <td style="width:1.1%;"/>
        <td style="width:1%;"/>
        <td style="width:13.402000000000001%;"/>
        <td style="width:1%;"/>
        <td style="width:1.1%;"/>
        <td style="width:1%;"/>
        <td style="width:13.402000000000001%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">U.S. statutory rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7a2918a6-07f3-484d-9736-8f9980d67635" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">21.0</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b08bf1c7-9905-4499-a563-8bbbe41824fe" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" unitRef="U_pure" scale="-2" decimals="INF">21.0</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Increase (decrease) resulting from:</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Permanent differences</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e4666dc4-3dc0-4fb2-af6d-c91f8345f869" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" unitRef="U_pure" scale="-2" decimals="3" sign="-" format="ixt:num-dot-decimal">1.0</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f61702ee-75c7-4743-a684-93243f7f0291" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="gifi:EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" unitRef="U_pure" scale="-2" decimals="3" sign="-">5.1</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State income taxes</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c9251d90-06a2-414e-9341-ba8418009f79" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" unitRef="U_pure" scale="-2" decimals="3" sign="-" format="ixt:num-dot-decimal">0.3</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8d8390cf-f1bc-4d42-ace9-603075d0e517" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" unitRef="U_pure" scale="-2" decimals="3">5.7</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Discrete items</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vesting of common stock</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_08450c01-231c-4dff-9da8-977c60bde621" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" unitRef="U_pure" scale="-2" decimals="3" sign="-" format="ixt:num-dot-decimal">0.2</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e34f8a9e-1a9b-49ca-8be7-2ffb269a6ceb" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" unitRef="U_pure" scale="-2" decimals="3" sign="-">1.0</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Change in valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c3ef0e35-7494-450d-8437-170133f8be25" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" unitRef="U_pure" scale="-2" decimals="3" sign="-" format="ixt:num-dot-decimal">19.4</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d46402ae-537b-42f9-9111-bd318f075458" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" unitRef="U_pure" scale="-2" decimals="3" sign="-">23.1</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Return to provision and other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7b76e948-5f91-48a2-8aa5-ac8083a8c770" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f1df5efb-8502-4042-8ab4-3ee55ab5f077" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="gifi:EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" unitRef="U_pure" scale="-2" decimals="3">1.8</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income tax (expense) benefit</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_afc6561c-e8ef-448c-915b-c8424a13f6a1" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">0.2</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5773cbcb-4963-4a6c-aaa3-c460bd0367e0" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" sign="-">0.7</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_98ee981b-b480-4bda-9a26-b27700396057" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Significant components of our income tax (expense) benefit for 2023 and 2022, were as follows (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"/>
        <td style="width:1.58%;"/>
        <td style="width:1%;"/>
        <td style="width:12.923%;"/>
        <td style="width:1%;"/>
        <td style="width:1.58%;"/>
        <td style="width:1%;"/>
        <td style="width:12.923%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_17d23a1b-7359-4bbc-9889-8d4483d2fb4f" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:CurrentFederalTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0e020d33-623a-4673-8af9-2bf25b66a1de" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:CurrentFederalTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7a1aae47-5dd5-4713-9772-91ebf2956f95" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ce9944da-9fd9-46d0-86e1-a7dc8d9bdea2" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total current</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_41706663-3713-4d11-b054-630fcde0084d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:CurrentIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f1d5e73c-4e44-4fc1-8698-5f9d3cbfa3e5" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:CurrentIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_bc2fda4a-7964-43ea-a029-ed306b08761d" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">4,933</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_44a3b243-73e8-4173-91fd-a2fc0ac8037a" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">556</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8eb6c65a-f0fb-40b1-af8c-82924ae6bf7b" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">24</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_63aeecf4-baf1-4068-b870-dff29d1184c1" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">166</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_09e90e63-9fc8-4629-aa90-e5c48f49f0ec" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">4,868</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_78d6d0cb-0d68-47cb-b988-47680b769059" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">745</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_fb444c48-ef8f-4ea9-80aa-5e1f609a9bc4" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DeferredIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">41</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3cd3ce01-021f-453b-910c-1742b2d2d805" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:DeferredIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">23</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income tax (expense) benefit</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7e414aa4-c701-4ead-b787-b53baf2b64b2" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">41</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_657154ad-3d7f-4fdf-bb8b-43c741bbdae2" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></ix:nonNumeric></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Deferred Taxes</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_0d9067af-7292-428f-b6e0-c292eac317a6" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Significant components of our deferred tax assets and liabilities at December 31, 2023 and 2022, were as follows (in thousands):</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"/>
        <td style="width:1.58%;"/>
        <td style="width:1%;"/>
        <td style="width:12.923%;"/>
        <td style="width:1%;"/>
        <td style="width:1.58%;"/>
        <td style="width:1%;"/>
        <td style="width:12.923%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred tax assets</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Leases</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6360aee6-c4a5-4936-9ba9-706854eaeece" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:DeferredTaxAssetsLeases" unitRef="U_USD" scale="3" decimals="-3">144</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_73d45452-ccb7-413a-b6fe-f7a9f8883553" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:DeferredTaxAssetsLeases" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">221</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Employee benefits</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e33099a0-5f60-46cb-a484-b9ae0e14b432" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,499</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3e14812e-15aa-47d6-8bef-43795902c2e9" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,465</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued losses on uncompleted contracts</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8a04d6d8-85bf-442e-b8bc-0bbc2bc0600c" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:DeferredTaxAssetsAccruedLossesOnUncompletedContracts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">77</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9ca7ff5f-bbfd-4846-8df8-430ee8381054" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:DeferredTaxAssetsAccruedLossesOnUncompletedContracts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,076</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Stock based compensation expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7dfffb33-02bc-489c-aff3-929de74f91e2" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" unitRef="U_USD" scale="3" decimals="-3">373</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ac108d69-2112-410c-ab3b-843bd5a4840f" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">351</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Debt interest</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e003fd12-1a2e-4eb1-ae6a-26b409673c75" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:DeferredTaxAssetsDebtInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">516</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">-</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal net operating losses</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2ae8cff6-2fea-4f26-9f06-820939eeaa8c" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">28,413</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e9edf263-b4a6-4acf-8ce0-be54a5b1759e" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,444</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State net operating losses</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e04437dd-8563-4be8-94bd-a58ba90e5b1d" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,407</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_faacd5c5-ef77-4acc-a4ba-db263b4cf923" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,493</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">R&amp;D and other tax credits</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b756b173-f376-4d5a-addb-60f6111bed25" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,037</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_38ad666a-7681-431d-bba4-da5f3a3ba6d1" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,013</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_afcd1b0a-48b2-4a4e-b736-2e212574bc23" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsOther" unitRef="U_USD" scale="3" decimals="-3">242</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5c84cf5c-cb53-4cc2-a2d4-3a883851660b" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsOther" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">481</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred tax assets</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6e15d788-7a10-4850-8155-9572be4d0d5f" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">35,708</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0d43d09b-6071-4166-bdf2-b8c3e441fda9" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">31,544</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred tax liabilities</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_664b3c85-7449-4c9d-bb0c-29a166d6a42a" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:DeferredTaxLiabilitiesDepreciation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">564</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f6569fd5-9226-49b2-b3b9-d6c62c60497d" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:DeferredTaxLiabilitiesDepreciation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,051</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid insurance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9457eef5-0513-4fb4-a865-0fb52359ec78" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" unitRef="U_USD" scale="3" decimals="-3">280</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3032e63d-4089-424a-9e05-47faa86c6174" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">497</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred tax liabilities</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_974812f9-868f-4842-bb9a-c837c4161c0a" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredIncomeTaxLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">844</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7722692a-1eb1-4bd2-a7b6-69ff22dd0090" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredIncomeTaxLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,548</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net deferred tax assets</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8260e11e-2adf-42ca-9ba5-ac9f3a611e1e" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="gifi:DeferredTaxAssetsLiabilitiesGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">34,864</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a01c8d44-ab18-4b3b-80be-e22c2545e140" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="gifi:DeferredTaxAssetsLiabilitiesGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,996</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b68640d1-ed3d-4068-8652-63ebb297f3fd" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsValuationAllowance" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">34,927</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_bcfae779-4af7-41ee-b752-963c62b93eba" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsValuationAllowance" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,100</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net deferred taxes </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0a37488d-9e1c-4ed2-b70c-06662794fe5a" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxLiabilities" unitRef="U_USD" scale="3" decimals="-3">63</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d5ab8a3a-7ea2-4027-b00d-b421dddb1ff2" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">104</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Amounts are included in other noncurrent liabilities on our Balance Sheet</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">.</span></div></div></ix:nonNumeric></div><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023 and 2022, we had total DTAs of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a3b28f81-abdc-42ad-9115-7c0b92c6ab06" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsGross" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">35.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c29856fb-bb90-4db5-982f-c099eb2dbb54" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsGross" unitRef="U_USD" scale="6" decimals="-5">31.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively (including U.S. federal net operating losses (&#8220;NOL(s)&#8221;) DTAs of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_edd887be-841d-4a09-81a4-eeae3d0f1fdb" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">28.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8b254b1e-721e-4ae7-95dc-ef7f604834f2" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" unitRef="U_USD" scale="6" decimals="-5">22.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively). On a periodic and ongoing basis, we evaluate our DTAs (including our NOL DTAs) and assess the appropriateness of our valuation allowance(s) (&#8220;VA(s)&#8221;). In assessing the need for a VA, we consider both positive and negative evidence related to the likelihood of realizing our DTAs. If, based upon the available evidence, our assessment indicates that it is more likely than not that some or all of the DTAs will not be realized, we record a VA. Our assessments include, among other things, the amount of taxable temporary differences that will result in future taxable income, the value and quality of our backlog, evaluations of existing and anticipated market conditions, analysis of recent and historical operating results (including cumulative losses over multiple periods) and projections of future results and strategic plans, as well as asset expiration dates. As a result of our assessment and due to cumulative losses for the three years ended December 31, 2023, we believe the negative evidence outweighs the positive evidence with respect to our ability to realize our DTAs, and accordingly, at December 31, 2023 and 2022, we had VAs of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_38084a0e-e61d-482c-bc0f-95c9d149e42b" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:DeferredTaxAssetsValuationAllowance" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">34.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_93d0fb63-dbeb-4fef-b056-f386b7d99be1" contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d" name="us-gaap:DeferredTaxAssetsValuationAllowance" unitRef="U_USD" scale="6" decimals="-5">30.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, offsetting our total DTAs.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, we had gross U.S. federal NOL carryforwards (excluding VAs) of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_229f315b-5780-4614-a9ce-2a1d90178c36" contextRef="C_da17b24e-8d51-45f0-a249-36d148fe59c1" name="us-gaap:OperatingLossCarryforwards" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">135.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, of which $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3206d0b2-c7b0-4b72-b2c3-18625786ebf1" contextRef="C_da17b24e-8d51-45f0-a249-36d148fe59c1" name="gifi:OperatingLossCarryforwardsSubjectToExpire" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">42.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million will expire in</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> 2037</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> with the </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d65c9e29-b45f-4afd-9738-2715d20f67cd" contextRef="C_340658b7-c5f6-4f9e-baf8-ee3628199f1b" name="us-gaap:OperatingLossCarryforwardsLimitationsOnUse"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">remaining U.S. federal NOL carryforwards eligible to be carried forward indefinitely, subject to an </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b03cb88e-409f-475a-baf6-0c100a515a8e" contextRef="C_340658b7-c5f6-4f9e-baf8-ee3628199f1b" name="gifi:OperatingLossCarryforwardsLimitationRateOnTaxableIncome" unitRef="U_pure" scale="-2" decimals="2">80</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% limitation on taxable income in each year.</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> At December 31, 2023, we had gross state NOL carryforwards (excluding VAs) of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_885ef457-10a8-49b5-b83f-2da0de3b2067" contextRef="C_6a3b135b-7cee-4004-85ca-f908d2888183" name="us-gaap:OperatingLossCarryforwards" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">45.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, which will expire fro</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">m 2035 through 2041.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Uncertain Tax Positions</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. At December 31, 2023 and 2022, we had no material reserves for uncertain tax positions. Tax returns subject to examination by the U.S. Internal Revenue Service are open for years after </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2019.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_d84b09b5-5eb9-4029-98e1-1ddd8fff4f58" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6. RETIREMENT AND LONG-TERM INCENTIVE PLANS</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Defined Contribution Plan</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We sponsor a defined contribution plan for eligible employees that is qualified under Section 401(k) of the Internal Revenue Code, which includes voluntary employee pre-tax contributions and Company-matching contributions, with potential additional discretionary contributions determined by our Board of Directors (&#8220;Board&#8221;). During 2023 and 2022, we contributed </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7c26b8c2-8e10-49ec-8efa-f9b1b99bc951" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4132c115-eb84-40af-b33f-00c2524ac20d" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, to the plan.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Long-Term Incentive Plans</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Under our long-term incentive plans (&#8220;Incentive Plans&#8221;), the Compensation Committee of our Board may grant cash-based and equity-based awards to eligible employees and non-employee directors, including restricted stock unit (&#8220;RSU&#8221;) awards (both time-based and performance-based), stock option awards and cash-based performance awards. The Compensation Committee determines the amount of each award, as well as the terms, conditions, performance measures and other provisions of the award. Under our Incentive Plans, the maximum number of shares that may be granted to any one officer or employee during any single calendar year is </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a903da32-cf09-47e6-bc95-908c02c104d9" contextRef="C_76c0035d-6bbe-4dca-ad23-c0e017c4af95" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">300,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. At December 31, 2023, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6092153d-23bf-4f1b-b6fc-9fb221f68a92" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">1,146,746</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> authorized shares available for future issuance under our Incentive Plans.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">21</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">RSU Awards </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">An RSU represents the right to receive one share of our common stock upon vesting, or the equivalent cash value on the vesting date if the award is cash-settled. RSUs are subject to transfer restrictions, forfeiture provisions and other terms and conditions of the Incentive Plans and applicable award agreements. Forfeitures are recognized as they occur.</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Time-based RSU Awards</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Outstanding time-based RSU awards to our non-employee directors and employees have a one-year or </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_fb4b2fc8-3de1-4fa7-abb0-8641c407e7cc" contextRef="C_d342c752-187b-4186-b7e8-0cdc98699744" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three-year</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, graded vesting period. The fair value for these awards was determined based upon the closing price of our stock on the date of grant applied to the total number of units granted. The fair value is expensed over the applicable vesting period on a straight-line basis.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Performance-based RSU Awards</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Outstanding performance-based RSU awards to our employees have a </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1c7e9128-ad9f-4020-9064-17880557f1e2" contextRef="C_8ca68023-b032-418a-be42-f11f835f0de2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three-year</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> graded vesting period. These awards provide that the number of shares of common stock ultimately issued will be between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_376afac2-db57-4afb-956c-b2bba3a99939" contextRef="C_0269de45-8980-4198-802f-0b5468843a36" name="gifi:NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_fca1eb15-2401-41fe-a26d-43cbc1123c06" contextRef="C_09185d95-707c-4c74-9ff3-bc5922f3e781" name="gifi:NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">200</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the target award based on the achievement of performance targets attributable to the year in which the awards are made, up to the maximum per person limit, with any excess shares earned payable in cash. The fair value for these awards was determined based upon the closing price of our stock on the date of grant applied to the total number of units anticipated to be granted based on the performance targets achieved. This fair value is expensed over the applicable vesting period using the graded vesting method. As a result of the performance targets achieved for 2021, one award recipient&#8217;s performance-based RSU awards were subject to partial cash-settlement (&#8220;Cash-Settled RSUs&#8221;) as described above. Accordingly, we account for this portion of the awards as liability-classified awards, with changes in the fair value of the awards reflected within general and administrative expense on our Statement of Operations over the vesting period. Compensation expense for our Cash-Settled RSUs was not significant for 2023 and was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_db4709f0-91c1-46be-a5fe-1d33a8c1cce5" contextRef="C_24b7e990-71af-44ce-907a-00c3c690b79e" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="6" decimals="-5">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for 2022. During 2023 and 2022, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a24548aa-b895-461a-8cf7-bc44acd64733" contextRef="C_fa386629-c7ec-4389-b0e0-17941db057e4" name="us-gaap:EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_427ff95a-96a0-4466-ac50-3c7307bfbc10" contextRef="C_24b7e990-71af-44ce-907a-00c3c690b79e" name="us-gaap:EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, was paid related to our Cash-Settled RSUs.</span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_3b0f28f9-7e4a-4a25-917a-4dbe08994a21" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A summary of activity for our RSU awards (excluding Cash-Settled RSUs) for 2023 and 2022 is as follows:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:30.586%;"/>
        <td style="width:1.18%;"/>
        <td style="width:1%;"/>
        <td style="width:14.163%;"/>
        <td style="width:1%;"/>
        <td style="width:1.66%;"/>
        <td style="width:1%;"/>
        <td style="width:13.703%;"/>
        <td style="width:1%;"/>
        <td style="width:1.18%;"/>
        <td style="width:1%;"/>
        <td style="width:14.163%;"/>
        <td style="width:1%;"/>
        <td style="width:1.66%;"/>
        <td style="width:1%;"/>
        <td style="width:13.703%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Number<br/>of Shares</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Weighted-<br/>Average<br/>Grant-Date<br/>Fair Value<br/>Per Share</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Number<br/>of Shares</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Weighted-<br/>Average<br/>Grant-Date<br/>Fair Value<br/>Per Share</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">RSUs, beginning of period</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_061851e6-c73c-445b-a2f5-a75aac8e4860" contextRef="C_42223cfa-5545-4029-95db-8b9c0d2f26b0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">838,267</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d6bc2853-a5cd-43d2-ab89-de06d846e262" contextRef="C_42223cfa-5545-4029-95db-8b9c0d2f26b0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">4.34</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_69235388-5aa1-4c15-8a49-b6e4ccc937bd" contextRef="C_06f13167-5eed-4387-a08a-8dff424bad6e" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">842,558</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_16948afd-3084-4051-b72d-e9a1f2e90d7f" contextRef="C_06f13167-5eed-4387-a08a-8dff424bad6e" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">4.47</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Granted</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a7a41818-376f-41f2-9345-ebe2fdc95118" contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">550,980</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_15ae4864-7dc3-494b-8707-b8446a60e539" contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2">3.47</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_54fc9891-4b7b-4fc7-a65b-cbe1028183b5" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">463,600</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c90acc26-1af7-446b-b107-a10ad6d6da0e" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">4.24</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vested</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cbc21edb-94c9-4493-ae90-430b9a3ed124" contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">443,106</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8bffc388-df7d-416a-806f-16fb196d0979" contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2">4.21</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e8c197b5-13de-4fb8-be65-4dbcc8257869" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">403,559</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0355c45e-6f2c-48b7-9a62-02bc12ff0acf" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">4.46</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Forfeited</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_11eab261-bc70-4520-83bc-c3b61dc38662" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">64,332</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_91788be3-5d32-4131-a4cc-e01b42bbea9d" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">4.49</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">RSUs, end of period</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1bd95442-876a-4f76-a750-714d1a88669c" contextRef="C_9139f63d-9057-42c4-9b2f-a427e8f6dc0a" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">946,141</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7e52910b-61f0-496d-8a78-2bf96fa9818d" contextRef="C_9139f63d-9057-42c4-9b2f-a427e8f6dc0a" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2">3.89</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5ff3be4e-7a35-4b81-bc4e-98ebf8061203" contextRef="C_42223cfa-5545-4029-95db-8b9c0d2f26b0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">838,267</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_b2b3db93-2f19-4716-b2ca-30d0c221ff8c" contextRef="C_42223cfa-5545-4029-95db-8b9c0d2f26b0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">4.34</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Compensation expense for our RSU awards was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0590899b-81bc-415f-b4dc-dcb59955bbcd" contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_fcd415b9-d1cb-41ec-827d-9bf93565abd8" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for 2023 and 2022, respectively, and is included in general and administrative expense and cost of revenue, as applicable, on our Statement of Operations. At December 31, 2023, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_0093d5be-b2d7-4f6b-be0d-a69ea191f5c5" contextRef="C_9139f63d-9057-42c4-9b2f-a427e8f6dc0a" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of unrecognized compensation expense related to our RSU awards. This cost is expected to be recognized over a weighted-average period of </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_65d851c9-109e-4cad-ad0b-88224a9b4d90" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.5</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> y</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ears. The total fair value of RSU awards granted during 2023 and 2022 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_bb54c884-45aa-492f-9830-b671f898c90f" contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_414aebed-926e-40b2-a65f-112261557096" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, and the total fair value of RSU awards that vested during 2023 and 2022 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7fa5e497-830c-4287-a7c6-2b219c228ac8" contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_476b71cd-ea2b-4db9-81f1-9a9655b01813" contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. The income tax benefit (expense) associated with our share-based compensation arrangements was not significant for 2023 or 2022.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Stock Option Awards and Cash-based Performance Awards &#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_be509668-3d07-4e59-a40b-ce95789a8b17" contextRef="C_47994a14-accc-418c-92d7-381b622394d5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen">no</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> outstanding stock option awards or cash-based performance awards and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1d2cac95-7de3-4c4c-99ae-16cad259ec82" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_9121d642-8596-4a37-9858-0f0fa7bfc8f6" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> such awards were made during 2023 or 2022.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">22</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b17b21d4-a2a3-40ef-9f8f-a26648da091c" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7. COMMITMENTS AND CONTINGENCIES</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Routine Legal Proceedings</span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are subject to various routine legal proceedings in the normal conduct of our business, primarily involving commercial disputes and claims, workers&#8217; compensation claims, and claims for personal injury under general maritime laws of the U.S. and the Jones Act. While the outcome of these legal proceedings cannot be predicted with certainty, we believe that the outcome of any such proceedings, even if determined adversely, would not have a material adverse effect on our financial position, results of operations or liquidity.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Resolution of MPSV Litigation</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On March 19, 2018, our subsidiary, Gulf Island Shipyards, LLC (&#8220;GIS&#8221;), received termination notices from its customer, Hornbeck Offshore Services, LLC (&#8220;Hornbeck&#8221;), of the contracts for the construction of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_5570b9bc-6c28-4315-b45d-459a8f41cb7f" contextRef="C_f12de176-6bb7-44c6-a364-76db7bf9d4c3" name="gifi:ConstructionInProgressNumberOfMultiPurposeServiceVessels" unitRef="U_Vessel" decimals="INF" format="ixt-sec:numwordsen">two</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> MPSVs. GIS disputed the purported terminations and disagreed with Hornbeck&#8217;s reasons for such terminations. In connection with such purported terminations, Hornbeck also made claims against the performance bonds issued by Zurich in connection with the construction of the MPSVs, for which the face amount of the bonds totaled $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7ac97e77-4535-4fc7-878e-fde794eddf55" contextRef="C_e3032ac6-3a56-44cc-a93b-8a3f692d0f6b" name="gifi:LossContingencyUnderPerformanceBondsIssued" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">50.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (&#8220;Performance Bonds&#8221;). On October 2, 2018, GIS filed a lawsuit against Hornbeck to enforce its rights and remedies under the applicable construction contracts for the two MPSVs. The lawsuit was filed in the Twenty-Second Judicial District Court for the Parish of St. Tammany, State of Louisiana and was styled Gulf Island Shipyards, LLC v. Hornbeck Offshore Services, LLC, bearing docket number 2018-14861 (&#8220;MPSV Litigation&#8221;). Hornbeck subsequently asserted counterclaims against GIS and Zurich seeking damages.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On October 4, 2023, the MPSV Litigation was dismissed in full with prejudice at the request of the parties after the parties reached an agreement in principle. In addition, on November 6, 2023, GIS and the Company entered into an agreement (&#8220;Settlement Agreement&#8221;) with Zurich pursuant to which Zurich released GIS and the Company from all of their obligations under the Performance Bonds and the associated general indemnity agreements relating to the Performance Bonds, and we agreed to release possession of the MPSVs to Zurich, which occurred in the fourth quarter 2023. Further, we entered into the Note Agreement. See Note 4 for further discussion of the Note Agreement.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As a result of the resolution of the MPSV Litigation, during the third quarter 2023, we recorded a charge of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e4b4ba8d-e5d0-4633-859f-d5b36bcf0525" contextRef="C_4714cb78-99d0-481d-9df4-1009ce2cfc6c" name="us-gaap:LitigationSettlementExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">32.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, consisting of (i) a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cdcb95d9-f9f4-43ef-844f-a3ea3ada50d8" contextRef="C_4714cb78-99d0-481d-9df4-1009ce2cfc6c" name="gifi:NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">12.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million non-cash charge associated with the write-off of a noncurrent net contract asset related to the MPSV construction contracts, and (ii) a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9319a5eb-3a2f-4336-b392-3e786d2dde71" contextRef="C_4714cb78-99d0-481d-9df4-1009ce2cfc6c" name="gifi:LitigationExpenseAssociatedWithRecordingLiability" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">20.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million charge associated with recording a liability resulting from the Settlement Agreement and Note Agreement. The charge was reflected as a reduction to previously recognized revenue on the MPSV construction contracts, resulting in a negative revenue amount for the Shipyard Division for 2023, and is included in the changes in noncurrent assets and liabilities, net on our Statement of Cash Flows. The liability was replaced with the Note Agreement in the fourth quarter 2023 and is reflected as current and long-term debt on our Balance Sheet at December 31, 2023.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Insurance</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We maintain insurance coverage for various aspects of our business and operations. However, we may be exposed to future losses due to coverage limitations and our use of deductibles and self-insured retentions for our exposures related to property and equipment damage, builder&#8217;s risk, third-party liability and workers&#8217; compensation and USL&amp;H claims. In connection with our insurance coverage renewal for our property and equipment during 2023, we determined that the benefits of maintaining insurance coverage for our property and equipment were limited due to high premium costs and deductibles and increased coverage limitations. Accordingly, we did not renew all of our property and equipment coverage and are now generally self-insured for exposures resulting from any future damage to our property and equipment.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> To the extent we have insurance coverage, we do not have an offset right for liabilities in excess of any deductibles and self-insured retentions. Accordingly, we have recorded a liability for estimated amounts in excess of our deductibles and retentions, and have recorded a corresponding asset related to estimated insurance recoveries, on our Balance Sheet. Further, to the extent we are self-insured, reserves are recorded based upon our estimates, with input from legal and insurance advisors. Changes in assumptions, as well as changes in actual experience, could cause these estimates to change. See Note 2 for discussion of the costs incurred associated with damage caused by Hurricanes Ida.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">23</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Letters of Credit and Surety Bonds</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We obtain letters of credit under our LC Facility or surety bonds from financial institutions to provide to our customers in order to secure advance payments or guarantee performance under our contracts, or in lieu of retention being withheld on our contracts. Letters of credit under our LC Facility are subject to cash securitization of the full amount of the outstanding letters of credit. In the event of non-performance under a contract, our cash securitization with respect to the letter of credit supporting such contract would become the property of Whitney Bank. With respect to surety bonds, payments by a Surety pursuant to a bond in the event of non-performance are subject to reimbursement to such Surety by us under a general indemnity agreement relating to such bond. Such indemnification obligations may include the face amount of the surety bond, or portions thereof, as well as other reimbursable items such as interest and certain investigative expenses and legal fees of the Surety. Such indemnification obligations would require us to use our cash, cash equivalents or short-term investments, and we may not have sufficient liquidity to satisfy such indemnification obligations. When a contract is complete, the contingent obligation terminates, and letters of credit or surety bonds are returned. See Note 4 for further discussion of our LC Facility and surety bonds.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Environmental Matters</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our operations are subject to extensive and changing U.S. federal, state and local laws and regulations, as well as the laws of other countries, that establish health and environmental quality standards. These standards, among others, relate to air and water pollutants and the management and disposal of hazardous substances and wastes. We are exposed to potential liability for personal injury or property damage caused by any release, spill, exposure or other accident involving such pollutants, substances or wastes. In connection with the historical operation of our facilities, including those associated with acquired operations, substances which currently are or might be considered hazardous were used or disposed of at some sites that will or may require us to make expenditures for remediation. We believe we are in compliance, in all material respects, with environmental laws and regulations and maintain insurance coverage to mitigate exposure to environmental liabilities. We do not believe any environmental matters will have a material adverse effect on our financial condition, results of operations or cash flow.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leases</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We maintain operating leases for our corporate office and certain operating facilities and equipment. See Note 3 for further discussion of our leases.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></ix:nonNumeric></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_05a3bbc5-e5f8-409c-937c-2bc0c8fffd06" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:IncomeLossPerShareAndShareholdersEquityTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8. INCOME (LOSS) PER SHARE AND SHAREHOLDERS&#8217; EQUITY</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income (Loss) Per Share</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2a5c2db9-6196-4998-bd25-eacaa7d5258e" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" escape="true"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table presents the computation of basic and diluted loss per share for 2023 and 2022 (in thousands, except per share data):</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:47.57%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:22.256%;"/>
        <td style="width:1%;"/>
        <td style="width:1.96%;"/>
        <td style="width:1%;"/>
        <td style="width:22.256%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8a714d3c-cb49-4f6f-bab1-bb9687738ac9" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">24,402</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ac816ec0-b066-496b-b3bf-5d847d731ed6" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,352</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Weighted average shares</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_956cfa89-77c0-431a-af87-e9c41a8d7472" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_94970c5b-61b8-432f-be19-a7b166d50558" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,193</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9c17cf55-5371-487b-9846-30a8cf103cb8" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal"><ix:nonFraction id="F_5ba9ee09-e610-48e8-89af-ec684c2f1a02" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,840</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic and diluted loss per share</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_23072614-f66d-46cc-9042-96a85b6c1eac" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" sign="-" format="ixt:num-dot-decimal"><ix:nonFraction id="F_a55b3341-847f-486b-b7dd-c76c5c064ddd" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" sign="-" format="ixt:num-dot-decimal">1.51</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c9116dc3-63df-462e-8bdc-656701787090" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" sign="-" format="ixt:num-dot-decimal"><ix:nonFraction id="F_16318011-7ca7-4172-8a66-71ce6c114411" contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" sign="-" format="ixt:num-dot-decimal">0.21</ix:nonFraction></ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table></ix:nonNumeric></div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Shareholders&#8217; Equity</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On December 1, 2023, our Board approved a share repurchase program (&#8220;Share Repurchase Program&#8221;) authorizing the repurchase of up to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_3e349065-c12c-49a3-a232-f5d660ae8386" contextRef="C_7155407d-bf96-4947-8a98-ad5509236125" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" unitRef="U_USD" scale="6" decimals="INF" format="ixt:num-dot-decimal">5.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of our outstanding common stock, effective from December 15, 2023 through </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_84e6de9e-cba3-49ec-aebc-f323249d5c29" contextRef="C_23da1c7a-3b6b-4c6c-866f-72f37f68421d" name="us-gaap:StockRepurchaseProgramExpirationDate" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 15, 2024</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. The timing and amount of any share repurchases is at the discretion of management and may be made from time to time through transactions in the open market, in privately negotiated transactions or by other means in accordance with applicable laws. The Share Repurchase Program does not obligate us to repurchase any shares of common stock and may be modified, increased, suspended or terminated at the discretion of our Board. During 2023, we repurchased </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4cd315b2-307b-4551-bd23-32de35c98090" contextRef="C_1bf7fc59-2a44-4d64-8947-7abe38b1173b" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">29,578</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares of our common stock for $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4445bb47-aca0-49f4-b10d-7b96bd666cb3" contextRef="C_1bf7fc59-2a44-4d64-8947-7abe38b1173b" name="us-gaap:StockRepurchasedDuringPeriodValue" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, and at December 31, 2023, we had remaining authorization to purchase $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8d811bde-44a8-4934-a2f6-b47aa682bd2b" contextRef="C_6d7d296e-8308-421e-b161-9b8751b36e38" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">4.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million under the Share Repurchase Program.</span></p></ix:nonNumeric></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">24</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div>
  <div><ix:nonNumeric id="F_392a83a3-d9fc-4fb4-be31-02e104e09f8e" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:SegmentReportingDisclosureTextBlock" escape="true"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9. OPERATING SEGMENTS</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We currently operate and manage our business through </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a22bc87a-780d-442c-a49f-a45b946ad5e4" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:NumberOfOperatingSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen">three</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> operating divisions (&#8220;Services&#8221;, &#8220;Fabrication&#8221; and &#8220;Shipyard&#8221;) and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_71de5472-4409-40ec-966d-adb3085df639" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="gifi:NumberOfCorporateNonOperatingSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen">one</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> non-operating division (&#8220;Corporate&#8221;), which represent our reportable segments. Our three operating divisions and Corporate Division are discussed below.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Services Division</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Services Division provides maintenance, repair, construction, scaffolding, coatings, welding enclosures and other specialty services on offshore platforms and inland structures and at industrial facilities; provides services required to connect production equipment and service modules and equipment on offshore platforms; provides project management and commissioning services; provides industrial staffing services; and performs municipal and drainage projects, including pump stations, levee reinforcement, bulkheads and other public works. Our services activities are managed from our various Facilities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabrication Division</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our Fabrication Division fabricates modules, skids and piping systems for onshore refining, petrochemical, LNG and industrial facilities and offshore facilities; fabricates foundations, secondary steel components and support structures for alternative energy developments and coastal mooring facilities; fabricates offshore production platforms and associated structures, including jacket foundations, piles and topsides for fixed production and utility platforms, as well as hulls and topsides for floating production and utility platforms; and fabricates other complex steel structures and components. Our fabrication activities are performed at our Houma Facilities.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Shipyard Division </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Our Shipyard Division previously fabricated newbuild marine vessels and provided marine repair and maintenance services. However, in the second quarter 2021, we completed the Shipyard Transaction. The Shipyard Transaction excluded the contracts and related obligations for our Ferry Projects that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. Construction of the Ferry Projects was performed at our Houma Facilities and the wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. Final completion of the wind down will occur upon completion of the warranty periods for the Ferry Projects, the last of which is anticipated to occur in the first quarter 2025. At December 31, 2023 and 2022, the net operating liabilities on our Balance Sheet associated with our Shipyard Division operations totaled $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_638850c1-f6ae-423d-ba15-cbd34b9f51e5" contextRef="C_b19e0574-d5db-429e-b9ea-18e4968c8435" name="us-gaap:OperatingLeaseLiability" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">1.4</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_94633078-ed55-4ff0-bfa3-c30384b50011" contextRef="C_bc4a4886-4017-4268-826f-76e476050225" name="us-gaap:OperatingLeaseLiability" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. See Note 1 for further discussion of the Shipyard Transaction, Note 2 for further discussion of our Ferry Projects and Note 7 for further discussion of the resolution of our MPSV Litigation.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Corporate Division and Allocations</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Corporate Division includes costs that do not directly relate to our operating divisions. Such costs include, but are not limited to, costs of maintaining our corporate office, executive management salaries and incentives, board of directors&#8217; fees, certain insurance costs and costs associated with overall corporate governance and reporting requirements for a publicly traded company. Shared resources and costs that benefit more than one operating division are allocated amongst the operating divisions based on each operating division&#8217;s estimated share of the benefit received. Such costs include, but are not limited to, human resources, insurance, information technology, accounting, business development and certain division leadership.</span></p><ix:exclude><div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">25</span></p></div>
     <hr style="page-break-after:always;"/><div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:10pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS-(Continued)</span></p></div></ix:exclude><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Segment Results</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; We generally evaluate the performance of, and allocate resources to, our divisions based upon gross profit or loss and operating income or loss. Segment assets are comprised of all assets attributable to each division. Intersegment revenues are priced at the estimated fair value of work performed. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_183cd94c-5c9c-4e47-9de9-09a5583d764e" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" escape="true" continuedAt="F_183cd94c-5c9c-4e47-9de9-09a5583d764e_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Summarized financial information for our segments as of and for the two-year period ended December 31, 2023, is as follows (in thousands):</span></ix:nonNumeric></span></p><div style="font-size:9pt;font-family:Times New Roman;"><ix:continuation id="F_183cd94c-5c9c-4e47-9de9-09a5583d764e_1">
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:37.763%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year Ended December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Corporate</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue (eliminations) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c35c7f26-3c93-48b5-adc1-0398c7ae28c3" contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">93,548</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d3a9b9c4-aad8-4bb6-844d-a3ffe54c2692" contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,046</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d3896dc3-ee58-4eba-8a81-5821a32f3d0e" contextRef="C_fadbd496-c1ef-4862-b033-2b9e2de8ef5e" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">30,417</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ab6fe88d-1df9-4550-90cb-7e30ecb12ee0" contextRef="C_f245e131-80fc-4498-83e5-e1095706280b" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">1,110</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ed18acee-629d-4f52-bc57-5fb8735d62f2" contextRef="C_77250883-71d3-4197-8132-505f6c3763fc" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">151,067</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_fc471788-0188-46e0-a16e-3f8dd72fb64b" contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,783</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1e06934f-631c-4fe4-976f-73f0a98c6717" contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,178</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8a77031b-4fa1-4c4d-9193-9a50ff0562c9" contextRef="C_fadbd496-c1ef-4862-b033-2b9e2de8ef5e" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">35,862</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_030fb041-ea20-4bc0-b9c1-62d2a31d79b5" contextRef="C_77250883-71d3-4197-8132-505f6c3763fc" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">11,901</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating income (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_092cc9be-113b-4c55-9bb7-6930b1d4e54f" contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,929</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_260fbcb7-882b-4bed-9c17-f8b2e4757950" contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,558</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_daa5b472-b5fd-4773-a605-376e8128ffa6" contextRef="C_fadbd496-c1ef-4862-b033-2b9e2de8ef5e" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">39,374</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_6eaecd38-737c-420c-b11e-cb3c87a3013d" contextRef="C_f245e131-80fc-4498-83e5-e1095706280b" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">7,996</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7636644b-9d06-4075-a6b4-e55250e12f89" contextRef="C_77250883-71d3-4197-8132-505f6c3763fc" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">25,883</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation and amortization expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_42dc0f98-20e8-4970-9ff9-7707adda19e3" contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,926</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c3ede233-4658-44b8-b538-1f4115ee9bf2" contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,249</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8e96201b-0c2b-4e03-9b0a-63e988c8187a" contextRef="C_f245e131-80fc-4498-83e5-e1095706280b" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3">291</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_35d282bd-c24a-4f7b-b2ec-6841acfe5972" contextRef="C_77250883-71d3-4197-8132-505f6c3763fc" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,466</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capital expenditures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_8bee0d0d-8914-4eb9-970e-d990eb88145a" contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">544</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a71864fe-0856-445b-8c54-fac5fd7c065b" contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,233</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_75b5603f-8392-4f05-89ea-500e5d603eb2" contextRef="C_f245e131-80fc-4498-83e5-e1095706280b" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">99</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c070f8fe-6a23-470d-9267-b3cff9f56ce4" contextRef="C_77250883-71d3-4197-8132-505f6c3763fc" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,876</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_55785b33-0f43-42d5-87e2-732de90686e3" contextRef="C_266672af-617b-4fb8-b279-4e187afadc2d" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">32,191</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4e284d10-dcea-4662-be5b-b3693aaab286" contextRef="C_20faa71f-e80d-4bd6-a545-8479d7c110df" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">42,368</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_313979de-eae4-4e75-8129-135fc9199de7" contextRef="C_cd145452-ba68-4832-bbab-f2d69bbb37bc" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,553</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c9d24f24-2097-4da8-8233-62f856e4d9f5" contextRef="C_3adcfaea-44fb-4459-a024-78c164bc3a40" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">52,316</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cc69b3f5-f236-4959-88e3-423c818fe52a" contextRef="C_fa83d1c1-fd21-47b5-a1f9-3650ae12e262" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">128,428</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:37.763%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
        <td style="width:1.541%;"/>
        <td style="width:1%;"/>
        <td style="width:8.907%;"/>
        <td style="width:1%;"/>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year Ended December 31, 2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Corporate</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue (eliminations)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_13a97ffc-c302-4f7f-b90e-5b5a9e38efd8" contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">87,022</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_23af235f-7757-4058-98a1-121ba86e9956" contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">48,299</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_78fa7df4-6d2b-4bb2-ad94-3aa311c520a7" contextRef="C_5c874480-56e2-4952-8695-f5343665429c" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,671</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f302af83-5f3a-4f1a-82f2-9406533913b6" contextRef="C_a3970fc1-85e8-40bd-8408-517bae191be3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">672</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_eb713059-8839-4463-abb8-281363e89195" contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">142,320</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_f98d48f2-5e0f-45b5-91b4-3bd9181612ce" contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,227</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9d93019d-48ed-41a8-9a81-f5a73b51f6ac" contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">274</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_9bef8b2f-4f4a-48df-b05e-29d12d9bdb8f" contextRef="C_5c874480-56e2-4952-8695-f5343665429c" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,058</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_294d6762-572e-4ffe-b603-4177e2aa8fe9" contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,895</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating income (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4b0870a8-02a8-4c4a-97d8-20320b3f6f38" contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,124</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_37615682-b3e3-4841-abff-879c46c7bb82" contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,874</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4684c12b-e03f-40cc-9a45-6df9669bba47" contextRef="C_5c874480-56e2-4952-8695-f5343665429c" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">7,554</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a33ae7ae-04f4-49a1-b0d2-929ade873157" contextRef="C_a3970fc1-85e8-40bd-8408-517bae191be3" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">8,859</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_4abf58a6-0244-4ac6-851c-6d6e9cc175ce" contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">3,415</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation and amortization expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_eedd476a-bd21-4eee-a1db-f797ba13db0c" contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,496</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d3eaff2a-1fbe-4334-83fa-3cd43d47a673" contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,343</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_a87f601d-5c1a-4d31-b612-0723eba27e12" contextRef="C_a3970fc1-85e8-40bd-8408-517bae191be3" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">259</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cd522fe4-be09-4271-b1f8-97ef922b6006" contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,098</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capital expenditures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_c52c70f5-090f-4c96-a3a5-90014db0f646" contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,326</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_2a6326a8-c71f-4693-9dae-ab34cea3e769" contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">633</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_55407551-33aa-4649-a0ca-fd02a70eaa6b" contextRef="C_a3970fc1-85e8-40bd-8408-517bae191be3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">127</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_d09b6525-3e98-4c53-88db-d06e8e0e2544" contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,086</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ec7ed5eb-42d3-4502-88d6-24e3f91f8ec8" contextRef="C_6303eb31-5b83-4da7-b2c0-7ec761e5f7e3" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">28,016</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_26acad6b-4ce8-4a8c-b937-fc342ecec73a" contextRef="C_50aab56e-5238-43b1-99ef-89b0d0552b93" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">40,531</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_cdf66168-e9c6-4638-a4a1-82317f7fcbca" contextRef="C_15ad06f3-cc87-490d-a652-cbef34e96aef" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,330</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_aa696b5f-33bf-44d2-b883-1cad155a2da4" contextRef="C_cc1e7336-22c9-4f9e-bfaf-e935d603a08c" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">49,989</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_e5695e73-e28d-4e47-bd40-9b114f593880" contextRef="C_a175debd-0104-4012-a2ab-07601609eb1d" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">134,866</ix:nonFraction></span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue for 2023 includes a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_62b98a27-2232-4c39-9c01-8fab02866df2" contextRef="C_9ebe2456-cc9f-43ae-bd16-513522a50e1e" name="us-gaap:LitigationSettlementExpense" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">32.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million resulting from the resolution of our MPSV Litigation for our Shipyard Division. Gross profit (loss) and operating income (loss) for 2023 includes a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_ed7833f1-b5a3-4706-bf37-1f78c5d076ae" contextRef="C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc" name="us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">32.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million resulting from the resolution of our MPSV Litigation and project charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_dc345a0b-f785-427f-b208-a92cd14e11ab" contextRef="C_794803ce-d97e-4446-ba7a-1a2fd69d3f78" name="us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" unitRef="U_USD" scale="6" decimals="-5" sign="-" format="ixt:num-dot-decimal">2.7</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division. Operating income (loss) for 2023 also includes gains </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_1c593023-5d25-428d-9ca2-e28e1ef3c3a7" contextRef="C_1d622621-1bd2-4b9d-9484-fbd8d9ee8de1" name="us-gaap:InsuredEventGainLoss" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7f88211f-dabb-4500-8118-e2f87baee218" contextRef="C_794803ce-d97e-4446-ba7a-1a2fd69d3f78" name="gifi:ChargesAssociatedWithDamageCausedByHurricane" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with damage previously caused by Hurricane Ida for our Shipyard Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 7 for further discussion of the resolution of our MPSV Litigation.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Gross profit (loss) and operating income (loss) for 2022 includes project charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_eb230eb7-6405-4340-bafd-513d76b0e4db" contextRef="C_91e23f16-98d0-4e7b-8b3b-2b15f08dcf1d" name="us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" unitRef="U_USD" scale="6" decimals="-5" sign="-" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division. Operating income (loss) for 2022 also includes gains of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_aa2ca03b-7be4-465b-964c-f1da18aabf73" contextRef="C_c53b35c5-eb37-49cf-acb6-48c5c967a1d0" name="us-gaap:InsuredEventGainLoss" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">7.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_41ed35dd-ec52-47cb-a483-65feb731333b" contextRef="C_91e23f16-98d0-4e7b-8b3b-2b15f08dcf1d" name="gifi:ChargesAssociatedWithDamageCausedByHurricane" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with damage previously caused by Hurricane Ida for our Shipyard Division, an impairment charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_51a4ece0-0843-4400-b3d3-d35d267603d1" contextRef="C_a0e7c22d-1634-4f42-8ab2-cdbce86f2df7" name="us-gaap:AssetImpairmentCharges" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with the underlying right-of-use asset for our corporate office lease for our Corporate Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 3 for further discussion of our corporate office lease asset impairment.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Cash and short-term investments are reported within our Corporate Division. </span></div></div></ix:continuation></div></ix:nonNumeric></div>
  <div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_cbb53180-1a06-47c2-9593-e7b79c0be771" contextRef="C_cae205c4-092f-40ce-becd-df88720df331" name="us-gaap:SubsequentEventsTextBlock" escape="true"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10. SUBSEQUENT EVENTS</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In February 2024, we sold our Houma AHFS for</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"><ix:nonFraction id="F_7d98347b-73db-4778-910a-372f672f4059" contextRef="C_01ac159e-3c97-46af-b432-8dbdc656cd94" name="gifi:ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">8.5</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (net of transaction and other costs). See Note 3 for further discussion of our Houma AHFS.</span></p></ix:nonNumeric></div>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">F-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">26</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="exhibit_index"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">EXHIBIT</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> INDEX</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:10.282%;"/>
    <td style="width:2.016%;"/>
    <td style="width:87.702%;"/>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;border-bottom:0.5pt solid;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">EXHIBIT<br/>NUMBER</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3.1</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000156459020026757/gifi-ex31_6.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Amended and Restated Articles of Incorporation of the Company, incorporated by reference to Exhibit 3.1 of the Company&#8217;s Form 8-K filed with the SEC on May 22, 2020 (SEC File No. 001-34279).</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3.2</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000095017023059443/gifi-ex3_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Amended and Restated By-laws of the Company, incorporated by reference to Exhibit 3.1 of the Company&#8217;s Form 8-K filed with the SEC on November 6, 2023 (SEC File No. 001-34279).</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4.1</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/0000899243-97-000392.txt"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Specimen Common Stock Certificate, incorporated by reference to the Company&#8217;s Form S-1/A filed with the SEC on March 19, 1997 (Registration No. 333-21863). &#x5E;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4.2</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000095017023039986/gifi-ex4_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Description of Common Stock of the Company, incorporated by reference to Exhibit 4.1 of the Company&#8217;s Form 10-Q for the quarter ended June 30, 2023 filed with the SEC on August 8, 2023.</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.1</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000103162316000053/indemnificationagreementin.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Form of Indemnification Agreement by and between the Company and each of its directors and executive officers, incorporated by reference to Exhibit 10.1 of the Company&#8217;s Form 8-K filed with the SEC on November 4, 2016.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.2</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> </span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000095017023023108/gifi-ex10_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">The Company&#8217;s Second Amended and Restated 2015 Stock Incentive Plan, incorporated by reference to Exhibit 10.2 of the Company&#8217;s Form 10-Q for the quarter ended June 30, 2023 filed with the SEC on August 8, 2023.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.3</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000156459021043156/gifi-ex107_85.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Form of Restricted Stock Unit Agreement, incorporated by reference to Exhibit 10.7 of the Company's Quarterly Report on Form 10-Q for the quarter ended June 30, 2021 filed with the SEC on August 11, 2021.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.4</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000156459021043156/gifi-ex108_84.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Form of Performance-Based Restricted Stock Unit Agreement, incorporated by reference to Exhibit 10.8 of the Company's Quarterly Report on Form 10-Q for the quarter ended June 30, 2021 filed with the SEC on August 11, 2021.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.5</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000156459022028813/gifi-ex101_10.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Form of Non-Management Director Restricted Stock Unit Agreement, incorporated by reference to Exhibit 10.1 of the Company&#8217;s Form 10-Q for the quarter ended June 30, 2022 filed with the SEC on August 9, 2022.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.6</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000156459022028813/gifi-ex102_7.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Form of Performance-Based Restricted Stock Unit Agreement, incorporated by reference to Exhibit 10.2 of the Company's Quarterly Report on Form 10-Q for the quarter ended June 30, 2022 filed with the SEC on August 9, 2022.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.7</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000095017023039986/gifi-ex10_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Form of Performance-Based Restricted Stock Unit Agreement, incorporated by reference to Exhibit 10.1 of the Company&#8217;s Quarterly Report on Form 10-Q for the quarter ended June 30, 2023 filed with the SEC on August 8, 2023.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.8</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000115752315000839/a51052776ex10_4.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">The Company&#8217;s Amended and Restated Annual Incentive Program, incorporated by reference to Exhibit 10.4 to the Company&#8217;s Form 8-K filed with the SEC on March 5, 2015.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.9</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000156459021028470/gifi-ex102_8.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Change of Control Agreement dated May 13, 2021 between the Company and Westley S. Stockton, incorporated by reference to Exhibit 10.2 of the Company&#8217;s Form 8-K  filed with the SEC on May 17, 2021.&#134;</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.10</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000156459021028470/gifi-ex101_7.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Change of Control Agreement dated May 13, 2021 between the Company and Richard W. Heo, incorporated by reference to Exhibit 10.1 of the Company&#8217;s Form 8-K filed with the SEC on May 17, 2021.&#134;</span><span style="color:#0000ff;white-space:pre-wrap;min-width:fit-content;">  </span></a></p></td>
   </tr>
  </table>
  <p style="text-indent:-3.05%;padding-left:2.96%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">E-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:10.2%;"/>
    <td style="width:2%;"/>
    <td style="width:87.8%;"/>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;border-bottom:0.5pt solid;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">EXHIBIT<br/>NUMBER</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.11</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000156459021019405/gifi-ex103_39.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Multiple Indebtedness Mortgage by and among Fidelity and Deposit Company of Maryland and Zurich American Insurance Company, as mortgagees, and Gulf Island, L.L.C and Gulf Island Services, L.L.C. f/k/a Dolphin Services, L.L.C., as mortgagors, dated April 19, 2021, incorporated by reference to Exhibit 10.3 of the Company&#8217;s Form 8-K filed with the SEC on April 19, 2021.</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.12</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000095017023060509/gifi-ex10_2.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Amendment to Multiple Indebtedness Mortgage by and among Fidelity and Deposit Company of Maryland and Zurich American Insurance Company, as mortgagees, and Gulf Island, L.L.C. and Gulf Island Services, L.L.C. f/k/a Dolphin Services, L.L.C., as mortgagors, dated November 6, 2023, incorporated by reference to Exhibit 10.2 of the Company&#8217;s Form 10-Q for the quarter ended September 30, 2023 filed with the SEC on November 7, 2023.</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10.13</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="https://www.sec.gov/Archives/edgar/data/1031623/000095017023060509/gifi-ex10_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Secured Promissory Note by and among the Company and all of its subsidiaries, as payors, and Zurich American Insurance Company and Fidelity and Deposit Company of Maryland, as payees, dated November 6, 2023, incorporated by reference to Exhibit 10.1 of the Company&#8217;s Form 10-Q for the quarter ended September 30, 2023 filed with the SEC on November 7, 2023.</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">21</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Subsidiaries of the Company - The Company&#8217;s significant subsidiaries, Gulf Island Works, L.L.C., Gulf Island, L.L.C., Gulf Island Shipyards, L.L.C. (with trade name Gulf Island Marine Fabricators), Gulf Island Services, L.L.C. (with trade names Gulf Island Steel Sales, Dolphin Services and Dolphin Steel Sales) (each organized under Louisiana law) and Gulf Marine Fabricators, L.P. (a Texas limited partnership) are wholly owned and are included in the Company's consolidated financial statements.</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">  </span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">22</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Subsidiary guarantors and issuers of guaranteed securities &#8211; From time to time, the Company may issue debt securities under a registration statement on Form S-3 filed with the SEC that are fully and unconditionally guaranteed by Gulf Island, L.L.C. and Gulf Island Services, L.L.C., each a wholly-owned subsidiary of the Company.</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23.1</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="gifi-ex23_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Consent of Ernst &amp; Young LLP.*</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">31.1</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="gifi-ex31_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">CEO Certifications pursuant to Rule 13a-14 under the Securities Exchange Act of 1934.*</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">31.2</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="gifi-ex31_2.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">CFO Certifications pursuant to Rule 13a-14 under the Securities Exchange Act of 1934.*</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">32</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="gifi-ex32.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Section 906 Certifications furnished pursuant to 18 U.S.C. Section 1350.*</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">97.1</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><a href="gifi-ex97_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline;min-width:fit-content;">Company&#8217;s Executive Compensation Clawback Policy.*</span></a></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">101 INS</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Inline XBRL Instance Document &#8211; the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">101.SCH</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Inline XBRL Taxonomy Extension Schema With Embedded Linkbase Documents.</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">104</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="padding-top:0.01in;vertical-align:top;padding-right:0.01in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">The cover page for the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended December 31, 2023, has been formatted in Inline XBRL and is contained in Exhibit 101.</span></p></td>
   </tr>
  </table>
  <p style="text-indent:-3.448%;padding-left:3.333%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#134;	Management Contract or Compensatory Plan.</span></p>
  <p style="text-indent:-3.448%;padding-left:3.333%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">*	Filed herewith.</span></p>
  <p style="text-indent:-3.448%;padding-left:3.333%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#x5E;	SEC File Number 000-22303.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">E-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2</span></p></div>
  <hr style="page-break-after:always;"/>
  <div style="padding-top:0.5in;min-height:0.5in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="signatures"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">SIGNAT</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">URES</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pursuant to the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized, on March 7, 2024.</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:50.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:6%;"/>
    <td style="width:94%;"/>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(Registrant)</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td colspan="2" style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">By:</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/S/ RICHARD W. HEO</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Richard W. Heo</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;text-align:right;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">President and Chief Executive Officer</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the registrant and in the capacities indicated on March 7, 2024.</span></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:48%;"/>
    <td style="width:4%;"/>
    <td style="width:48%;"/>
   </tr>
   <tr style="height:8pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;border-bottom:0.5pt solid;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Signature</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;border-bottom:0.5pt solid;padding-right:0.042in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Title</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;border-bottom:1pt solid;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/S/ RICHARD W. HEO</span></p></td>
    <td style="vertical-align:bottom;border-bottom:1pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td rowspan="2" style="vertical-align:top;padding-right:0.028in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">President, Chief Executive Officer and Director (Principal Executive Officer)</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Richard W. Heo</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;border-bottom:1pt solid;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/S/ WESTLEY S. STOCKTON</span></p></td>
    <td style="vertical-align:bottom;border-bottom:1pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td rowspan="2" style="vertical-align:top;padding-right:0.028in;text-align:right;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Executive Vice President, Chief Financial Officer, Treasurer and Secretary (Principal Financial Officer and Principal Accounting Officer)</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Westley S. Stockton</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;border-bottom:1pt solid;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/S/ ROBERT M. AVERICK</span></p></td>
    <td style="vertical-align:bottom;border-bottom:1pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Director</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Robert M. Averick</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;border-bottom:1pt solid;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/S/ WILLIAM E. CHILES</span></p></td>
    <td style="vertical-align:bottom;border-bottom:1pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Chairman of the Board</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">William E. Chiles</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;border-bottom:1pt solid;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/S/ MICHAEL J. KEEFFE</span></p></td>
    <td style="vertical-align:bottom;border-bottom:1pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Director</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Michael J. Keeffe</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;border-bottom:1pt solid;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/S/ CHERYL D. RICHARD</span></p></td>
    <td style="vertical-align:bottom;border-bottom:1pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Director</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Cheryl D. Richard</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td colspan="2" style="vertical-align:bottom;"><p style="font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;border-bottom:1pt solid;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/S/ JAY R. TROGER</span></p></td>
    <td style="vertical-align:bottom;border-bottom:1pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Director</span></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;padding-right:0.028in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Jay R. Troger</span></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">S-</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1</span></p></div>
  <hr style="page-break-after:always;"/>
 </body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>2
<FILENAME>gifi-ex23_1.htm
<DESCRIPTION>EX-23.1
<TEXT>
<html>
 <head>
  <title>EX-23.1</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <div style="min-height:0.5in;"></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exhibit 23.1</font></p>
  <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-size:14pt;font-family:Times New Roman;min-width:fit-content;">Consent of Independent Registered Public Accounting Firm</font></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consent to the incorporation by reference in the following Registration Statements:</font></p>
  <div style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.7521786492374725%;display:inline-flex;justify-content:flex-start;">1.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Registration Statement (Form S-8 No. 333-46155) pertaining to the Long-Term Incentive Plan of Gulf Island Fabrication, Inc.,</font></div></div>
  <div style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.7521786492374725%;display:inline-flex;justify-content:flex-start;">2.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Registration Statement (Form S-8 No. 333-88466) pertaining to the 2002 Long-Term Incentive Plan of Gulf Island Fabrication, Inc.,</font></div></div>
  <div style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.7521786492374725%;display:inline-flex;justify-content:flex-start;">3.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Registration Statement (Form S-8 No. 333-176187) pertaining to the 2011 Stock Incentive Plan of Gulf Island Fabrication, Inc.,</font></div></div>
  <div style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.7521786492374725%;display:inline-flex;justify-content:flex-start;">4.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Registration Statement (Form S-8 No. 333-204158) pertaining to the 2015 Stock Incentive Plan of Gulf Island Fabrication, Inc., </font></div></div>
  <div style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.7521786492374725%;display:inline-flex;justify-content:flex-start;">5.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Registration Statement (Form S-8 No. 333-242337) pertaining to the Amended and Restated 2015 Stock Incentive Plan of Gulf Island Fabrication, Inc.,</font></div></div>
  <div style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.7521786492374725%;display:inline-flex;justify-content:flex-start;">6.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Registration Statement (Form S-8 No. 333-273969) pertaining to the Second Amended and Restated 2015 Stock Incentive Plan of Gulf Island Fabrication, Inc., and</font></div></div>
  <div style="margin-left:4.528%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.7521786492374725%;display:inline-flex;justify-content:flex-start;">7.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Registration Statement (Form S-3 No. 333-273950) of Gulf Island Fabrication, Inc.</font></div></div>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">of our report dated March 7, 2024, with respect to the consolidated financial statements of Gulf Island Fabrication, Inc. included in this Annual Report (Form 10-K) of Gulf Island Fabrication, Inc. for the year ended December 31, 2023.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <table style="border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;">
   <tr style="visibility:collapse;">
    <td style="width:24.36%;"></td>
    <td style="width:1.28%;"></td>
    <td style="width:74.36%;"></td>
   </tr>
   <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/s/ Ernst &amp; Young LLP</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
   </tr>
   <tr style="word-break:break-word;white-space:pre-wrap;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
   </tr>
   <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Houston, Texas</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
   </tr>
   <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">March 7, 2024</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="flex-direction:column;display:flex;min-height:0.5in;justify-content:flex-end;"></div>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>3
<FILENAME>gifi-ex31_1.htm
<DESCRIPTION>EX-31.1
<TEXT>
<html>
 <head>
  <title>EX-31.1</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <div style="min-height:0.5in;"></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exhibit 31.1</font></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certifications</font></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">I, Richard W. Heo, certify that:</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1. I have reviewed this Annual Report on Form 10-K of Gulf Island Fabrication, Inc.;</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2. Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3. Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4. The registrant&#x2019;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(c) Evaluated the effectiveness of the registrant&#x2019;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(d) Disclosed in this report any change in the registrant&#x2019;s internal control over financial reporting that occurred during the registrant&#x2019;s most recent fiscal quarter (the registrant&#x2019;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#x2019;s internal control over financial reporting; and</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5. The registrant&#x2019;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#x2019;s auditors and the audit committee of the registrant&#x2019;s board of directors (or persons performing the equivalent functions):</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(a) All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#x2019;s ability to record, process, summarize and report financial information; and</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#x2019;s internal control over financial reporting.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:49%;"></td>
    <td style="width:2%;"></td>
    <td style="width:49%;"></td>
   </tr>
   <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:top;border-bottom:0.75pt solid #000000;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/s/ Richard W. Heo</font></p></td>
   </tr>
   <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:top;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Richard W. Heo</font></p></td>
   </tr>
   <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">President and Chief Executive Officer</font></p></td>
   </tr>
   <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(Principal Executive Officer)</font></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: March 7, 2024</font></p>
  <div style="flex-direction:column;display:flex;min-height:0.5in;justify-content:flex-end;"></div>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>4
<FILENAME>gifi-ex31_2.htm
<DESCRIPTION>EX-31.2
<TEXT>
<html>
 <head>
  <title>EX-31.2</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <div style="min-height:0.5in;"></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exhibit 31.2</font></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certifications</font></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">I, Westley S. Stockton, certify that:</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1. I have reviewed this Annual Report on Form 10-K of Gulf Island Fabrication, Inc.;</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2. Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3. Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4. The registrant&#x2019;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(c) Evaluated the effectiveness of the registrant&#x2019;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(d) Disclosed in this report any change in the registrant&#x2019;s internal control over financial reporting that occurred during the registrant&#x2019;s most recent fiscal quarter (the registrant&#x2019;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#x2019;s internal control over financial reporting; and</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5. The registrant&#x2019;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#x2019;s auditors and the audit committee of the registrant&#x2019;s board of directors (or persons performing the equivalent functions):</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(a) All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#x2019;s ability to record, process, summarize and report financial information; and</font></p>
  <p style="text-indent:9.08%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#x2019;s internal control over financial reporting.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:49%;"></td>
    <td style="width:2%;"></td>
    <td style="width:49%;"></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:top;border-bottom:0.75pt solid #000000;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/s/ Westley S. Stockton</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:top;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Westley S. Stockton</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Executive Vice President, Chief Financial Officer, Treasurer and Secretary</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="text-indent:1.5pt;vertical-align:bottom;"><p style="margin-left:1.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(Principal Financial Officer and Principal Accounting Officer)</font></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: March 7, 2024</font></p>
  <div style="flex-direction:column;display:flex;min-height:0.5in;justify-content:flex-end;"></div>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32
<SEQUENCE>5
<FILENAME>gifi-ex32.htm
<DESCRIPTION>EX-32
<TEXT>
<html>
 <head>
  <title>EX-32</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <div style="min-height:0.5in;"></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exhibit 32</font></p>
  <p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certification Furnished Pursuant to</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">18 U.S.C. Section 1350, as adopted pursuant to</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Section 906 of the Sarbanes-Oxley Act of 2002</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the Annual Report on Form 10-K of Gulf Island Fabrication, Inc. (the &#x201c;Company&#x201d;) for the fiscal year ended December 31, 2023, as filed with the Securities and Exchange Commission on the date hereof (the &#x201c;Report&#x201d;), the undersigned, who are the Chief Executive Officer and Chief Financial Officer of the Company, certify pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act, that, to the best of their knowledge:</font></p>
  <div style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.752626672113803%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the Report fully complies with the requirements of Section 13(a) or Section 15(d) of the Securities Exchange Act of 1934, as amended; and</font></div></div>
  <div style="margin-left:4.537%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.537%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:4.752626672113803%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company for the period covered by the Report.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:49%;"></td>
    <td style="width:3%;"></td>
    <td style="width:1.3%;"></td>
    <td style="width:46.7%;"></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">By:</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;border-bottom:0.75pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/s/ Richard W. Heo</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Richard W. Heo</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">President and Chief Executive Officer</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(Principal Executive Officer)</font></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;">
   <tr style="visibility:collapse;">
    <td style="width:49%;"></td>
    <td style="width:3.3%;"></td>
    <td style="width:1%;"></td>
    <td style="width:46.7%;"></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">By:</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;border-bottom:0.75pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">/s/ Westley S. Stockton</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Westley S. Stockton</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Executive Vice President,</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Chief Financial Officer, Treasurer, and Secretary</font></p></td>
   </tr>
   <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;min-width:fit-content;">&#160;</font></p></td>
    <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(Principal Financial Officer and Principal Accounting Officer)</font></p></td>
   </tr>
  </table>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Date: March 7, 2024</font></p>
  <p style="text-indent:4.533%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">A signed original of this written statement required by Section 906 has been provided to Gulf Island Fabrication, Inc. and will be retained by Gulf Island Fabrication, Inc. and furnished to the Securities and Exchange Commission or its staff upon request.</font></p>
  <div style="flex-direction:column;display:flex;min-height:0.5in;justify-content:flex-end;"></div>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-97.1
<SEQUENCE>6
<FILENAME>gifi-ex97_1.htm
<DESCRIPTION>EX-97.1
<TEXT>
<html>
 <head>
  <title>EX-97.1</title>
 </head>
 <body style="margin: auto!important;padding: 8px;">
  <div style="padding-top:0.5in;min-height:1in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Exhibit 97.1</font></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Incentive-Based Compensation Recovery Policy</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The Board of Directors (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Board</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) of Gulf Island Fabrication, Inc. (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Company</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) has determined that it is in the best interests of the Company and its stockholders to adopt this Incentive-Based Compensation Recovery Policy (this &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Policy</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), which provides for the recovery of certain incentive compensation in the event of an Accounting Restatement (as defined below). This Policy is designed to comply with, and shall be interpreted to be consistent with, Section 10D of the Securities Exchange Act of 1934, as amended (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Exchange Act</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;), Rule 10D-1 promulgated under the Exchange Act (&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Rule 10D-1</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) and Listing Rule 5608 (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Listing Standards</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) of The Nasdaq Stock Market (&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">NASDAQ</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;).  As required by SEC Rule 10D-1, the Listing Standards require the Company to adopt a compensation recovery policy as set forth in the rule, comply with the policy and provide related disclosures required by the Listing Standards and in applicable filings with the U.S. Securities and Exchange Commission (&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">SEC</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) in order for the Company&#x2019;s common stock to remain listed on NASDAQ. Capitalized terms not otherwise defined herein have the meanings set forth in Section 2 hereof.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">1.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Administration</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Except as specifically set forth herein, this Policy shall be administered by the Compensation Committee of the Board (the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Committee</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;). The Committee is authorized to interpret and construe this Policy and to make all determinations necessary, appropriate or advisable to administer, and cause the Company to comply with, this Policy, without further action by the Board. Any determinations made by the Committee shall be final and binding on all affected persons, including the Company and the Covered Executives, and need not be uniform with respect to each person covered by the Policy. The Committee is authorized to consult with the full Board, the Audit Committee of the Board, or any other committee of the Board if and to the extent it deems necessary or appropriate to administer, and cause the Company to comply with, this Policy.</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">2.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Definitions</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">As used in this Policy, the following definitions shall apply:</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Accounting Restatement</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means an accounting restatement of the Company&#x2019;s financial statements due to the material noncompliance of the Company with any financial reporting requirement under the securities laws, including any required accounting restatement to correct an error in previously issued financial statements (i) that is material to the previously-issued financial statements (commonly referred to as a &#x201c;Big R&#x201d; restatement), or (ii) that would result in a material misstatement if the error were corrected in the current period or left uncorrected in the current period (commonly referred to as a &#x201c;little r&#x201d; restatement).</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Clawback Period</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means, with respect to any Accounting Restatement, the three completed fiscal years of the Company immediately preceding the Restatement Date and any transition period (that results from a change in the Company&#x2019;s fiscal year) of less than nine months within or immediately following those three completed fiscal years.</font></div></div>
  <p style="margin-left:6.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Code</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means the U.S. Internal Revenue Code of 1986, as amended. Any reference to a section of the Code or regulation thereunder includes such section or regulation, any valid regulation or other official guidance promulgated under such section, and any comparable provision of any<br></font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:1in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1</font></p></div>
  <hr style="page-break-after:always;">
  <div style="padding-top:0.5in;min-height:1in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></div>
  <p style="margin-left:8.4%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">future legislation or regulation amending, supplementing, or superseding such section or regulation.</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Committee</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; has the meaning set forth in Section 1 hereof.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(e)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Covered Executives</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means the Company&#x2019;s current and former executive officers, as determined by the Board in accordance with the definition of executive officer set forth in Rule 10D-1 and the Listing Standards.</font></div></div>
  <p style="margin-left:6.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(f)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Effective Date</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means October 2, 2023.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(g)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Erroneously Awarded Compensation</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; has the meaning set forth in Section 4 of this Policy.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(h)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Financial Reporting Measures</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means measures that are determined and presented in accordance with the accounting principles used in preparing the Company&#x2019;s financial statements, and all other measures that are derived wholly or in part from such measures.  Stock price and total stockholder return (and any measures that are derived wholly or in part from stock price or total stockholder return) shall, for purposes of this Policy, be considered Financial Reporting Measures.  For the avoidance of doubt, a Financial Reporting Measure need not be presented within the Company&#x2019;s financial statements or included in a filing with the SEC.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(i)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Incentive-Based Compensation</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means any compensation that is granted, earned or vested based wholly or in part upon the attainment of a Financial Reporting Measure. </font></div></div>
  <p style="margin-left:6.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(j)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Restatement Date</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means the earlier to occur of (i) the date the Board, a committee of the Board or the officer or officers of the Company authorized to take such action if Board action is not required, concludes, or reasonably should have concluded, that the Company is required to prepare an Accounting Restatement, or (ii) the date a court, regulator or other legally authorized body directs the Company to prepare an Accounting Restatement, in each case regardless of if or when the restated financial statements are publicly disseminated or filed with the SEC.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">3.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Covered Executives; Incentive-Based Compensation</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">This Policy applies to all Incentive-Based Compensation received by a person: (a) on or after the Effective Date (even if approved, awarded, granted or paid prior to the Effective Date); (b) after beginning service as a Covered Executive; (c) who served as a Covered Executive at any time during the performance period for such Incentive-Based Compensation; (d) while the Company had a class of securities listed on a national securities exchange or a national securities association; and (e) during the Clawback Period.</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">For purposes of this Policy, Incentive-Based Compensation is deemed &#x201c;received&#x201d; in the Company&#x2019;s fiscal period during which the Financial Reporting Measure specified in the Incentive-Based Compensation award is attained, even if the payment or grant of such Incentive-Based Compensation occurs after the end of that period. For the avoidance of doubt, Incentive-Based Compensation that is subject to both a Financial Reporting Measure vesting condition and a service-based vesting condition shall be considered received when the relevant Financial Reporting Measure is achieved, even if the Incentive-Based Compensation continues to be subject to the service-based vesting condition.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:1in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Arial;min-width:fit-content;">2</font></p></div>
  <hr style="page-break-after:always;">
  <div style="padding-top:0.5in;min-height:1in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></div>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">4.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Required Recovery of Erroneously Awarded Compensation in the Event of an Accounting Restatement</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">In the event of an Accounting Restatement, the Company must recover, reasonably promptly, Erroneously Awarded Compensation, in amounts determined pursuant to this Policy and in accordance with Rule 10D-1 and the Listing Standards, as follows:</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">For purposes of this Policy, &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Erroneously Awarded Compensation</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d; means, in the event of an Accounting Restatement, the amount of Incentive-Based Compensation received that exceeds the amount of Incentive-Based Compensation that otherwise would have been received had it been determined based on the restated amounts in such Accounting Restatement, computed without regard to any taxes paid by the relevant Covered Executive.  </font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:10%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.7033333333333336%;display:inline-flex;justify-content:flex-start;">(i)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">With respect to Incentive-Based Compensation based on stock price or total stockholder return, where the amount of Erroneously Awarded Compensation is not subject to mathematical recalculation directly from the information in an Accounting Restatement: </font></div></div>
  <p style="margin-left:13.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:13.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.7027629799969946%;display:inline-flex;justify-content:flex-start;">A.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">the amount of Erroneously Awarded Compensation will instead be based on a reasonable estimate of the effect of the Accounting Restatement on the stock price or total stockholder return upon which the Incentive-Based Compensation was received; and </font></div></div>
  <p style="margin-left:18.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:13.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.7027629799969946%;display:inline-flex;justify-content:flex-start;">B.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">the Company must maintain documentation of the determination of that reasonable estimate and provide such documentation to NASDAQ. </font></div></div>
  <p style="margin-left:18.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:10%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.7033333333333336%;display:inline-flex;justify-content:flex-start;">(ii)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">With respect to any compensation plans or programs that take into account Incentive-Based Compensation, the amount of Erroneously Awarded Compensation subject to recovery hereunder includes, but is not limited to, the amount contributed to any notional account based on Erroneously Awarded Compensation and any earnings accrued to date on that notional amount.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">After an Accounting Restatement, the Committee shall promptly determine the amount of any Erroneously Awarded Compensation received by each Covered Executive and shall promptly provide written notice to each Covered Executive by email, certified mail or overnight mail of the amount of any Erroneously Awarded Compensation and a demand for repayment or return of such compensation.</font></div></div>
  <p style="margin-left:8.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The Committee shall have discretion to determine the appropriate means of recovering Erroneously Awarded Compensation based on the particular facts and circumstances.  Notwithstanding the foregoing, except as set forth in Section 5 below, in no event may the Company accept an amount that is less than the amount of Erroneously Awarded Compensation in satisfaction of a Covered Executive&#x2019;s obligations hereunder.</font></div></div>
  <p style="margin-left:8.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">To the extent that the Covered Executive has already reimbursed the Company for any Erroneously Awarded Compensation, the Committee may credit such reimbursed amount against the amount of Erroneously Awarded Compensation that is subject to recovery under this Policy.</font></div></div>
  <p style="margin-left:3.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(e)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">To the extent that a Covered Executive fails to repay all Erroneously Awarded Compensation to the Company when due, the Company shall take all reasonable and appropriate actions to recover such Erroneously Awarded Compensation from the applicable Covered Executive.  The </font></div></div>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:1in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Arial;min-width:fit-content;">3</font></p></div>
  <hr style="page-break-after:always;">
  <div style="padding-top:0.5in;min-height:1in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></div>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;visibility:hidden;display:inline-flex;justify-content:flex-start;"></font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">applicable Covered Executive shall be required to reimburse the Company for any and all expenses reasonably incurred (including legal fees) by the Company in recovering such Erroneously Awarded Compensation in accordance with the immediately preceding sentence. Such recovery and reimbursement may include offsetting such Erroneously Awarded Compensation and expenses against any amounts due from the Company or its subsidiaries to the Covered Executive.</font></div></div>
  <p style="margin-left:8.333%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(f)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Recovery under this Policy with respect to a Covered Executive shall not require any finding that such Covered Executive engaged in misconduct or was responsible for any error that caused or contributed to the Accounting Restatement.</font></div></div>
  <p style="margin-left:6.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(g)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Any action by the Company to recover Erroneously Awarded Compensation under this Policy from a Covered Executive shall not, whether alone or in combination with any other action, event or condition, be deemed (i) &#x201c;good reason&#x201d; for resignation or to serve as a basis for a claim of constructive termination under any benefits or compensation arrangement applicable to such Covered Executive, or (ii) to constitute a breach of a contract or other arrangement to which such Covered Executive is party.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">5.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Method of Recovery</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The Committee shall determine, in its sole discretion, the timing and method for promptly recovering Erroneously Awarded Compensation hereunder, which may include without limitation (a) seeking reimbursement of all or part of any cash or equity-based award, (b) cancelling prior cash or equity-based awards, whether vested or unvested or paid or unpaid, (c) cancelling or offsetting against base salary and/or any planned future cash or equity-based awards, (d) forfeiture of deferred compensation, subject to compliance with Section 409A of the Code, and (e) any other method that does not contravene any applicable law, including without limitation Section 409A of the Code.</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The Company is authorized and directed pursuant to this Policy to recover Erroneously Awarded Compensation in compliance with this Policy unless the Committee or, in the absence of the Committee, a majority of the independent directors serving on the Board, has determined in good faith that recovery would be impracticable solely for one or more of the following limited reasons, and subject to the following procedural and disclosure requirements:</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.333%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.447919145106397%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The direct expense paid to a third party to assist in enforcing the Policy would exceed the amount to be recovered. Before concluding that it would be impracticable to recover any amount of Erroneously Awarded Compensation based on the expense of enforcement, the Committee must make a reasonable attempt to recover such Erroneously Awarded Compensation, document such reasonable attempt(s) to recover and provide that documentation to NASDAQ;</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.333%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.447919145106397%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Recovery would violate home country law where that law was adopted prior to November 28, 2022. Before concluding that it would be impracticable to recover any amount of Erroneously Awarded Compensation based on violation of home country law, the Committee must satisfy the applicable opinion and disclosure requirements of Rule 10D-1 and the Listing Standards; or</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.333%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.447919145106397%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Recovery would likely cause an otherwise tax-qualified retirement plan, under which benefits are broadly available to employees of the Company, to fail to meet the requirements of Section 401(a)(13) or Section 411(a) of the Code.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:1in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Arial;min-width:fit-content;">4</font></p></div>
  <hr style="page-break-after:always;">
  <div style="padding-top:0.5in;min-height:1in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></div>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">6.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">No Indemnification of Covered Executives Against Loss of Erroneously Awarded Compensation</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Notwithstanding the terms of any indemnification or insurance policy, any contractual arrangement with any Covered Executive or any provision of the Company&#x2019;s or any of its subsidiaries&#x2019; governing or organizational documents (such as articles of incorporation, certificates of incorporation, by-laws or similar document) that provides or may be interpreted to provide to the contrary, the Company shall not indemnify any Covered Executives against the loss of any Erroneously Awarded Compensation, including any payment or reimbursement for the cost of third-party insurance purchased by any Covered Executive to fund potential clawback obligations under this Policy.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">7.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Committee Indemnification</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Any members of the Committee, and any other members of the Board who assist in the administration of this Policy, shall not be personally liable for any action, determination or interpretation made with respect to this Policy and shall be fully indemnified by the Company to the fullest extent permitted under any articles of incorporation, certificate of incorporation, bylaw, similar organizational document, contract, policy or law applicable to the Company with respect to any such action, determination or interpretation.</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">8.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Effective Date</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">This Policy shall be effective as of the Effective Date. Subject to applicable law, the Committee may affect recovery under this Policy from any amount of compensation approved, awarded, granted, payable or paid to the Covered Executive prior to, on or after the Effective Date.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">9.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Other Recovery Rights; Company Claims</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The Board intends that this Policy shall be applied to the fullest extent of the law. Any right of recovery by the Company under this Policy is in addition to, and not in lieu of, any other remedies or rights of recovery that may be available to the Company under applicable law, including Section 304 of the Sarbanes-Oxley Act of 2002, government regulation, or stock exchange listing requirement or pursuant to the terms of any similar policy in any employment agreement, equity award agreement, or other agreement, policy or plan of the Company and any other legal or equitable remedies available to the Company, including those set forth in any corporate governance guidelines that may be adopted or amended by the Board. Notwithstanding the foregoing, unless otherwise required by applicable law, any amounts recovered under any other such recovery, recoupment or clawback rights that would be recoverable under this Policy shall count toward any required recovery under this Policy and vice versa.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Nothing contained in this Policy, and no recoupment or recovery as contemplated by this Policy, shall limit any claims, damages or other legal or equitable remedies the Company or any of its affiliates may have against a Covered Executive arising out of or resulting from any actions or omissions by the Covered Executive.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">10.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Amendment</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The Board may amend, modify, supplement, rescind or replace all or any portion of this Policy at any time and from time to time in its discretion, and shall amend this Policy as it deems necessary to comply with applicable law or any rules or standards adopted by NASDAQ or other national securities exchange on which the Company&#x2019;s securities are listed.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:1in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Arial;min-width:fit-content;">5</font></p></div>
  <hr style="page-break-after:always;">
  <div style="padding-top:0.5in;min-height:1in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></div>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">11.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Acknowledgement of Binding Effect</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">As a condition to continued employment, each Covered Executive shall sign and deliver to the Company, within 60 calendar days following the later of (i) the Effective Date of this Policy or (ii) the date the individual becomes a Covered Executive, the Acknowledgement Form attached hereto as </font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;text-decoration:underline;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Exhibit A</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">, pursuant to which the Covered Executive agrees to be bound by, and to comply with, the terms and conditions of this Policy. This Policy is binding upon all Covered Executives, even if such Covered Executive fails to execute or deliver the attached Acknowledgment Form to the Company.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">12.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Severability</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;"> </font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The provisions in this Policy are intended to be applied to the fullest extent of the law. To the extent that any provision of this Policy is found to be unenforceable or invalid under any applicable law, such provision shall be applied to the maximum extent permitted, and shall automatically be deemed amended in a manner consistent with its objectives to the extent necessary to conform to any limitations required under applicable law.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">13.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Successors</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">This Policy shall be binding and enforceable against all Covered Executives and their beneficiaries, heirs, executors, administrators or other legal representatives.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">14.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Governing Law; Jurisdiction and Forum; Waiver of Jury Trial</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.333%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5.87%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:6.072392853817746%;display:inline-flex;justify-content:flex-start;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">This Policy shall be governed by, and construed and enforced in accordance with, Section 10 of the Exchange Act, Rule 10D-1 and the Listing Standards, and to the extent applicable, the laws of the State of Louisiana. </font></div></div>
  <p style="margin-left:9.173%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.333%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:5.87%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:6.072392853817746%;display:inline-flex;justify-content:flex-start;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The Company and each Covered Executive: (i) submits to the personal jurisdiction of the federal district court with jurisdiction over the location of the Company&#x2019;s headquarters and, if that court lacks jurisdiction, the state court with jurisdiction over the location of the Company&#x2019;s headquarters, and the relevant appellate courts, in the event any dispute arises out of this Policy; (ii) agrees that it, he or she will not attempt to deny or defeat such personal jurisdiction by motion or other request for leave from any such court; and (iii) agrees that it, he or she will not bring any proceeding relating to this Policy in any court other than the court designated in the preceding clause (i).</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.463%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:4.935%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:5.112029584511638%;display:inline-flex;justify-content:flex-start;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">The Company and each Covered Executive: (i) waives trial by jury in any action, proceeding, or counterclaim arising out of or in any way connected with this Policy or the administration thereof, and (ii) agrees to refrain from seeking a jury trial in any lawsuit, proceeding, counterclaim or any other litigation procedure based upon, or arising out of, this Policy.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:6.667%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">15.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Required Policy-Related Filings and Disclosures</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">A copy of this Policy and any amendments thereto will be filed as an exhibit to the Company&#x2019;s annual report on Form 10-K filed with the SEC.  In addition, the Company shall file all disclosures with respect to this Policy in accordance with the requirements of the federal securities laws, including disclosures required by the SEC.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:1in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Arial;min-width:fit-content;">6</font></p></div>
  <hr style="page-break-after:always;">
  <div style="padding-top:0.5in;min-height:1in;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">EXHIBIT A</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">GULF ISLAND FABRICATION, INC.</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">INCENTIVE-BASED COMPENSATION RECOVERY POLICY</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">ACKNOWLEDGEMENT FORM</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">By signing below, the undersigned acknowledges and confirms that the undersigned has received and reviewed a copy of the Gulf Island Fabrication, Inc. Incentive-Based Compensation Recovery Policy (as it may be amended, restated, supplemented or otherwise modified from time to time, the &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Policy</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;). Capitalized terms used but not otherwise defined in this Acknowledgement Form (this &#x201c;</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Acknowledgement Form</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#x201d;) shall have the meanings ascribed to such terms in the Policy.</font><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;"> </font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">By signing this Acknowledgement Form, the undersigned further acknowledges and agrees that:</font></p>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <div style="margin-left:3.87%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.4671798606054303%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">the undersigned is and will continue to be subject to the Policy; </font></div></div>
  <div style="margin-left:3.87%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.4671798606054303%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">the Policy will apply both during and after the undersigned&#x2019;s employment with the Company;</font></div></div>
  <div style="margin-left:3.87%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.4671798606054303%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">in the event of any inconsistency between the Policy and the terms of any employment agreement to which the undersigned is a party, or the terms of any compensation plan, program or agreement under which any compensation has been granted, awarded, earned or paid, or any right to indemnification available under state law, any agreement or policy or the Company&#x2019;s governing or organizational documents,  the terms of the Policy shall govern and all such agreements, plans, programs, policies or rights shall be deemed amended to include the terms of this Policy; </font></div></div>
  <div style="margin-left:3.87%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.4671798606054303%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">the undersigned will abide by the terms of the Policy, including, without limitation, by returning any Erroneously Awarded Compensation to the Company to the extent required by, and in a manner permitted by, the Policy; and</font></div></div>
  <div style="margin-left:3.87%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:3.4671798606054303%;display:inline-flex;justify-content:flex-start;">&#x2022;</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">the Policy shall be binding and enforceable against the undersigned and the undersigned&#x2019;s beneficiaries, heirs, executors, administrators and other legal representatives.</font></div></div>
  <p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Covered Executive</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">_________________________________</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Signature</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">_________________________________</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Printed Name</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">&#160;</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">_________________________________</font></p>
  <p style="margin-left:46.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><font style="color:#000000;white-space:pre-wrap;font-size:11pt;font-family:Times New Roman;min-width:fit-content;">Date</font></p>
  <div style="flex-direction:column;display:flex;padding-bottom:0.5in;min-height:1in;justify-content:flex-end;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:11pt;font-family:'Calibri',sans-serif;min-width:fit-content;">&#160;</font></p></div>
  <hr style="page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>7
<FILENAME>img20478310_0.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 img20478310_0.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" !Z M0# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#W^BBB@ HK
M@_\ A;6@?\^VH_\ ?I/_ (NC_A;6@?\ /MJ/_?I/_BZZ/JM;^5F7MZ?<[RBN
M#_X6UH'_ #[:C_WZ3_XNC_A;6@?\^VH_]^D_^+H^JUOY6'MZ?<[RBN#_ .%M
M:!_S[:C_ -^D_P#BZ/\ A;6@?\^VH_\ ?I/_ (NCZK6_E8>WI]SO**X/_A;6
M@?\ /MJ/_?I/_BZ/^%M:!_S[:C_WZ3_XNCZK6_E8>WI]SO**X/\ X6UH'_/M
MJ/\ WZ3_ .+H_P"%M:!_S[:C_P!^D_\ BZ/JM;^5A[>GW.\HK@_^%M:!_P ^
MVH_]^D_^+J2W^*>A7-S% EMJ >1PBDQIC)./[U+ZK6_E#V]/N=Q1116!J%%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
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
MKHOFC\)U4*ZJ*SW-:BBBN,Z3EOB-_P B'J7_ &R_]&I7@M>]?$;_ )$/4O\
MME_Z-2O!:]K+?X3]?T1YN,_B+T/J.N6^(W_(AZE_VR_]&I74URWQ&_Y$/4O^
MV7_HU*\JA_%CZK\SNJ_PY>C/!:Z5OA_XI4$G27X])4/_ +-7-5]1U[&,Q,J'
M+RK<\_#T8U;WZ'S==>'M9LD=[G2KV)$^\[0-M'XXQ6;7U'7-^(O!&D>(8W=X
M5MKPY*W,2@-G_:'\0Z=>?0BL*>9)NTT:SP;M[K///"GQ(O=+ECM-7D>[L3QY
MC<R1<]<]6'L>?0\8/L5M<PWEM'<6\BRPR*&1U.00:^<-9T:\T'4Y;"^CVRIR
M&'W77LRGN#_];J*[3X8^*)+/4!H=U(3:W!/D;C_JY.N![-Z>N/4T\7A8RC[6
MF+#UY1ER3/8****\@] **** "BBB@#P7_A7/BO\ Z!7_ ),1?_%5+;?#;Q-)
M=0I/I_E0LZB23SXSL7/)P&YP*]UHKO\ [1J]E_7S.3ZG3[L9%$D$*11($C10
MJJ.@ X KGO'.O/X?\-2SP-MNIF$,)Q]UCG+?@ 3]<5TE>7_&)F":,H)VDS$C
MW&S'\S6&&@IUHQ9M7DXTVT>6DDDDDDGJ34UG9SW]Y#:6J>9/,P1%R!DGW/%0
M5M^#_P#D<-)_Z^4_G7T$WRQ;1Y$5>21>_P"%<^*_^@5_Y,1?_%4?\*Y\5_\
M0*_\F(O_ (JO>J*\?^T:O9?C_F>C]3I]V>"_\*Y\5_\ 0*_\F(O_ (JC_A7/
MBO\ Z!7_ ),1?_%5[U11_:-7LOQ_S#ZG3[L\%_X5SXK_ .@5_P"3$7_Q56-/
M^'WBB#4K6:33-J),C,?M$1P 03_%7N5%)YC5:M9?U\P6#@NK"BBBN ZPHZ45
MG:_,]MX<U.>)MLD=I*ZGT(0D4XJ[L)NRN?/FMZD^L:W>:@Y/[^4LH/4+T4?@
M,#\*]/\ A1HBV^ES:S*O[VY8Q1'TC4\X^K#_ ,=%>0U]$>#[9;7P?I,:=#;)
M)^+C<?U->SCY<E%0CU/.PJYJCDS;HHHKQ3T@HK&\2>)+3PQ8Q7=Y%-(DDGE@
M0@$YP3W(]*YG_A;FB?\ /EJ'_?"?_%5M"A4FKQ5T9RJPB[-G?T5P'_"W-$_Y
M\M0_[X3_ .*H_P"%N:)_SY:A_P!\)_\ %57U2M_*3[>GW._K@/BY_P BQ:?]
M?B_^@/7?*P= PZ$9K@?BY_R+%I_U^+_Z ]&%_C1"O_#9Y?X9_P"1KT?_ *_H
M?_0Q7T?7SAX9_P"1KT?_ *_H?_0Q7T?75F7QQ,,%\+"BBBO-.T\N^,7_ #!?
M^V__ +3KDOA__P CSIG^^_\ Z U=;\8O^8+_ -M__:=<E\/_ /D>=,_WW_\
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
M!I55G<*BEF)P !DDU?\ 9U/FO=V(^N3M:VI<U?5+C6M6N-1NB/-G;) '"CH
M/H !^%>H_"?17MM-N=6F7!NB(X01SL7J<^A/'_ :Y_PI\-KW4;A+K6H9+2R7
MGRF^667VQU4>N>?3KD>Q111P0I#$BQQHH5$48"@<  >E9XW$0Y/94R\-1ES>
MTF0:G_R";S_K@_\ Z":^9J^F=2!.E7@ R3 __H)KYL^QW7_/M-_WP:>6O27R
M#&[H]=\*^./#FF^&-/L[O4?+N(HMKIY$AP<GN%Q6O_PL7PI_T%?_ "7E_P#B
M:\+^QW7_ #[3?]\&C['=?\^TW_?!K66 I2;DV]?3_(S6*J)6LCZ#TGQ9HFN7
M;6NFWOGS*AD*^4Z_*"!G+ #N*VJ\;^%-O-%XJG:2*1!]C<992/XTKN_'^KR:
M7X7FCMU9KF[_ '"!1D@$?,V.O XSV)%>?6PZC65.'4ZZ=9NGSR/)?&>N?V_X
MFN;I#FWC/DP8.<HI//XG+?C74?"?0O/OKC6ID^2WS# ?]LCYC^"G'_ O:N C
MT^\FE2*.UF9W8*H"'DGI7T/X>TB/0M"M-.3!,2?O&'\3GEC^9/X5W8RHJ5%4
MX]=/D<N'BZE3GD:=%%%>,>D%<#\5-$^VZ'%JD2YFLFP^!R8VP#]<''T!-=]4
M5S;17EK-;3IOAF0QNN<94C!'Y5I1J.G-370BI#GBXGS7IM_/I6I6U_;D"6"0
M.N<X..QQV/0^QKZ1L;V'4;"WO;=MT,\8D0^Q&>?>OG;5=$O=+U6YL7@E8P2%
M0X0X8=B/J,'\:].^%>JS/IL^CW*2*UN?-@W*1E"?F'3LQS_P+VKU,?!3IJI'
MI^1PX23C-P9;^*W_ "*"?]?2?R:O(-(_Y#5C_P!?$?\ Z$*]A^*4;R^$D6-&
M<_:D.%&>S5Y)I-I<C6;$FWE %Q'SL/\ >%5@6O8/YBQ*_>GTC1117BGI!534
M],M-7T^6RO8A)!(,$'J#V(/8BK=%--IW0FKZ,^>?%/A>[\,:EY$V9+>3)@G
MP'']".XK"KZ5UC1[/7--DL;Z/?$_0C[R-V93V(_SQ7@?B7PW>>&=3-K<C?$V
M6AG4?+(O]".X[?0@GW,)BE57++XOS/,Q%!TW=;'T57+?$;_D0]2_[9?^C4KJ
M:YCXAHTG@74E12S'RL #)_UJ5X]#^+'U7YGH5?X<O1G@=>]?\+%\*?\ 05_\
MEY?_ (FO"_L=U_S[3?\ ?!H^QW7_ #[3?]\&O<KX>%:W,]CS*565*_*MSVJ[
M^*/ANW'[J2YNC_TRA(_]#VUPGB3XD:GK<+VEH@L;1QM<(VZ1QZ%N,#V'ODD5
MS,&AZO=#-OI=[*/5+=V'Z"NDTOX8^(+Z1?M4<=C#P2\K!FQ[*I//L<5C&AAJ
M/O-_>:.K6JZ)'(6]O-=7"06\3RS2':B(,EC["O=? _A%/#.G&2<*VHW 'G..
M=@[(#Z>OJ?H*M>&O!^F>&8LVZF6[90)+F3[Q]0!_",]OIDG%=!7'B\9[7W(;
M?F=%##\GO2W"BBBN ZPHHHH **** /GNBNS_ .%:ZO\ \_5C_P!]O_\ $T?\
M*UU?_GZL?^^W_P#B:\SV-3L?(_4<3_(SC**[/_A6NK_\_5C_ -]O_P#$T?\
M"M=7_P"?JQ_[[?\ ^)H]C4[!]1Q/\C.,HKL_^%:ZO_S]6/\ WV__ ,31_P *
MUU?_ )^K'_OM_P#XFCV-3L'U'$_R,XRBNS_X5KJ__/U8_P#?;_\ Q-'_  K7
M5_\ GZL?^^W_ /B:/8U.P?4<3_(SC**[/_A6NK_\_5C_ -]O_P#$T?\ "M=7
M_P"?JQ_[[?\ ^)H]C4[!]1Q/\C.,JSIW_(4M/^NR?^A"NJ_X5KJ__/U8_P#?
M;_\ Q-2VGPZU6"\@F:YLBL<BL0';. <_W:%1G?8J.!Q"DO<9Z91117IGU@44
M44 %%%% !56\TRPU J;VQMKDK]WSHE?'TR*M44TVM4#5]S.AT#1K:598-)L(
MI%.5=+9%(^A K1HHH;;W$DEL%%%%(84444 %%%% &;)X>T6:1I)='T]W8Y+-
M;(23]<5=M[:WLX1#;0101+T2) JC\!4M%-R;T;$DEL%%%%(84444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 4[O2=-OY!)>:?:7+J,!
MIH5<@?B*=9Z;8:>&%E96UMN^]Y,2IGZX%6J*?,[6N*RO<****0PHHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *KW=C9ZA$(KVU@N8
MPVX)-&' /K@]^35BBA.VP;A1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110!
"_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>8
<FILENAME>gifi-20231231.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA WITH EMBEDDED LINKBASES DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- DFIN New ActiveDisclosure (SM) XBRL Schema Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2024-03-07T11:10:34.6154+00:00 -->
<!-- Copyright (c) 2024 Donnelly Financial Solutions, Inc. All Rights Reserved. -->
<xsd:schema targetNamespace="http://www.gulfisland.com/20231231" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:srt="http://fasb.org/srt/2023" xmlns:gifi="http://www.gulfisland.com/20231231" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink">
  <xsd:import schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" namespace="http://www.xbrl.org/2003/instance"/>
  <xsd:import schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" namespace="http://www.xbrl.org/2003/linkbase"/>
  <xsd:import schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" namespace="http://xbrl.org/2005/xbrldt"/>
  <xsd:import schemaLocation="https://xbrl.sec.gov/dei/2023/dei-2023.xsd" namespace="http://xbrl.sec.gov/dei/2023"/>
  <xsd:import schemaLocation="https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd" namespace="http://xbrl.org/2020/extensible-enumerations-2.0"/>
  <xsd:import schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd" namespace="http://fasb.org/us-gaap/2023"/>
  <xsd:import schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" namespace="http://www.xbrl.org/dtr/type/2022-03-31"/>
  <xsd:import schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd" namespace="http://fasb.org/srt/2023"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation" id="Role_DocumentDocumentAndEntityInformation">
        <link:definition>100000 - Document - Document and Entity Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS" id="Role_StatementCONSOLIDATEDBALANCESHEETS">
        <link:definition>100010 - Statement - CONSOLIDATED BALANCE SHEETS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical" id="Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical">
        <link:definition>100020 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS" id="Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS">
        <link:definition>100030 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY" id="Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY">
        <link:definition>100040 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS" id="Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS">
        <link:definition>100050 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" id="Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES">
        <link:definition>100060 - Disclosure - ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureREVENUECONTRACTASSETSANDLIABILITIESANDOTHERCONTRACTMATTERS" id="Role_DisclosureREVENUECONTRACTASSETSANDLIABILITIESANDOTHERCONTRACTMATTERS">
        <link:definition>100070 - Disclosure - REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipment3" id="DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipment3">
        <link:definition>100080 - Disclosure - LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebt" id="DisclosureCreditFacilitiesAndDebt">
        <link:definition>100090 - Disclosure - CREDIT FACILITIES AND DEBT</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONS" id="Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONS">
        <link:definition>100100 - Disclosure - SHIPYARD TRANSACTION AND DISCONTINUED OPERATIONS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureACQUISITION" id="Role_DisclosureACQUISITION">
        <link:definition>100110 - Disclosure - ACQUISITION</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIMPAIRMENTSANDGAINLOSSONASSETSHELDFORSALE" id="Role_DisclosureIMPAIRMENTSANDGAINLOSSONASSETSHELDFORSALE">
        <link:definition>100120 - Disclosure - IMPAIRMENTS AND (GAIN) LOSS ON ASSETS HELD FOR SALE</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureINCOMETAXES" id="Role_DisclosureINCOMETAXES">
        <link:definition>100130 - Disclosure - INCOME TAXES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRETIREMENTANDLONGTERMINCENTIVEPLANS" id="Role_DisclosureRETIREMENTANDLONGTERMINCENTIVEPLANS">
        <link:definition>100140 - Disclosure - RETIREMENT AND LONG-TERM INCENTIVE PLANS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCOMMITMENTSANDCONTINGENCIES" id="Role_DisclosureCOMMITMENTSANDCONTINGENCIES">
        <link:definition>100150 - Disclosure - COMMITMENTS AND CONTINGENCIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquity1" id="DisclosureIncomeLossPerShareAndShareholdersEquity1">
        <link:definition>100160 - Disclosure - INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOPERATINGSEGMENTS" id="Role_DisclosureOPERATINGSEGMENTS">
        <link:definition>100170 - Disclosure - OPERATING SEGMENTS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureQUARTERLYFINANCIALINFORMATIONUNAUDITED" id="Role_DisclosureQUARTERLYFINANCIALINFORMATIONUNAUDITED">
        <link:definition>100180 - Disclosure - QUARTERLY FINANCIAL INFORMATION (UNAUDITED)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEvents1" id="DisclosureSubsequentEvents1">
        <link:definition>100190 - Disclosure - SUBSEQUENT EVENTS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" id="Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies">
        <link:definition>100200 - Disclosure - ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesTables" id="Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesTables">
        <link:definition>100210 - Disclosure - Organization and Summary of Significant Accounting Policies (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables" id="Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables">
        <link:definition>100220 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables" id="DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables">
        <link:definition>100230 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtTables" id="DisclosureCreditFacilitiesAndDebtTables">
        <link:definition>100240 - Disclosure - Credit Facilities and Debt (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONSTables" id="Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONSTables">
        <link:definition>100250 - Disclosure - SHIPYARD TRANSACTION AND DISCONTINUED OPERATIONS (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureAcquisitionTables" id="Role_DisclosureAcquisitionTables">
        <link:definition>100260 - Disclosure - Acquisition (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureImpairmentsAndGainLossOnAssetsHeldForSaleTables" id="Role_DisclosureImpairmentsAndGainLossOnAssetsHeldForSaleTables">
        <link:definition>100270 - Disclosure - Impairments and (Gain) Loss on Assets Held for Sale (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables" id="Role_DisclosureIncomeTaxesTables">
        <link:definition>100280 - Disclosure - Income Taxes (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansTables" id="Role_DisclosureRetirementAndLongTermIncentivePlansTables">
        <link:definition>100290 - Disclosure - Retirement and Long-term Incentive Plans (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityTables" id="DisclosureIncomeLossPerShareAndShareholdersEquityTables">
        <link:definition>100300 - Disclosure - Income (Loss) Per Share and Shareholders' Equity (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsTables" id="Role_DisclosureOperatingSegmentsTables">
        <link:definition>100310 - Disclosure - Operating Segments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureQuarterlyFinancialInformationUnauditedTables" id="Role_DisclosureQuarterlyFinancialInformationUnauditedTables">
        <link:definition>100320 - Disclosure - Quarterly Financial Information (Unaudited) (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" id="Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails">
        <link:definition>100330 - Disclosure - Organization and Summary of Significant Accounting Policies - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails" id="Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails">
        <link:definition>100340 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Disaggregation of Revenue (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa" id="DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa">
        <link:definition>100350 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails" id="Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails">
        <link:definition>100360 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails" id="Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails">
        <link:definition>100370 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Parenthetical) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails" id="Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails">
        <link:definition>100380 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails" id="Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails">
        <link:definition>100390 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Parenthetical) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails" id="Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails">
        <link:definition>100400 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails2" id="Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails2">
        <link:definition>100410 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Details) 2</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails" id="DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails">
        <link:definition>100420 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Summary of Property, Plant and Equipment (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails" id="DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails">
        <link:definition>100430 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails" id="DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails">
        <link:definition>100440 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails" id="DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails">
        <link:definition>100450 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Parenthetical) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails" id="DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails">
        <link:definition>100460 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Other Intangible Assets (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails" id="DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails">
        <link:definition>100470 - Disclosure - Credit Facilities and Debt - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails" id="DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails">
        <link:definition>100480 - Disclosure - Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails" id="DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails">
        <link:definition>100490 - Disclosure - Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Parenthetical) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails" id="Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails">
        <link:definition>100500 - Disclosure - Shipyard Transaction and Discontinued Operations - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails" id="DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails">
        <link:definition>100510 - Disclosure - Shipyard Transaction and Discontinued Operations - Summary of Operating Results From Discontinued Operations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails" id="DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails">
        <link:definition>100520 - Disclosure - Shipyard Transaction and Discontinued Operations - Summary of Operating Results From Discontinued Operations (Parenthetical) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails" id="Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails">
        <link:definition>100530 - Disclosure - Income Taxes - Reconciliation of Income Taxes (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails" id="Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails">
        <link:definition>100540 - Disclosure - Income Taxes - Components of Income Tax Expense (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails" id="Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails">
        <link:definition>100550 - Disclosure - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails" id="Role_DisclosureIncomeTaxesAdditionalInformationDetails">
        <link:definition>100560 - Disclosure - Income Taxes - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails" id="Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails">
        <link:definition>100570 - Disclosure - Retirement and Long-Term Incentive Plans - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails" id="Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails">
        <link:definition>100580 - Disclosure - Retirement and Long-Term Incentive Plans - Summary of RSU Activity Excluding Cash Settled RSUs (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" id="Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails">
        <link:definition>100590 - Disclosure - Commitments and Contingencies - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails" id="DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails">
        <link:definition>100600 - Disclosure - Income (Loss) Per Share and Shareholders' Equity - Computation of Basic and Diluted Earnings Per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails2" id="DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails2">
        <link:definition>100610 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Details) 2</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails" id="DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails">
        <link:definition>100620 - Disclosure - Income (Loss) Per Share and Shareholders' Equity - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails" id="Role_DisclosureOperatingSegmentsAdditionalInformationDetails">
        <link:definition>100630 - Disclosure - Operating Segments - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails" id="Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails">
        <link:definition>100640 - Disclosure - Operating Segments - Summarized Segment Financial Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails" id="Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails">
        <link:definition>100650 - Disclosure - Operating Segments - Summarized Segment Financial Information (Parenthetical) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" id="DisclosureSubsequentEventsAdditionalInformationDetails">
        <link:definition>100660 - Disclosure - Subsequent Events - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:linkbase id="lnk">
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY" xlink:href="gifi-20231231.xsd#Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS" xlink:href="gifi-20231231.xsd#Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa" xlink:href="gifi-20231231.xsd#DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails" xlink:href="gifi-20231231.xsd#DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails" xlink:href="gifi-20231231.xsd#DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails" xlink:href="gifi-20231231.xsd#DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails" xlink:href="gifi-20231231.xsd#DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureIncomeTaxesAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureOperatingSegmentsAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" xlink:href="gifi-20231231.xsd#DisclosureSubsequentEventsAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd#eedm" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS" xlink:href="gifi-20231231.xsd#Role_StatementCONSOLIDATEDBALANCESHEETS" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS" xlink:href="gifi-20231231.xsd#Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails2" xlink:href="gifi-20231231.xsd#Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails2" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails" xlink:href="gifi-20231231.xsd#DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails" xlink:href="gifi-20231231.xsd#DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails" xlink:href="gifi-20231231.xsd#Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails2" xlink:href="gifi-20231231.xsd#DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails2" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation" xlink:href="gifi-20231231.xsd#Role_DocumentDocumentAndEntityInformation" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical" xlink:href="gifi-20231231.xsd#Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:href="gifi-20231231.xsd#Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureREVENUECONTRACTASSETSANDLIABILITIESANDOTHERCONTRACTMATTERS" xlink:href="gifi-20231231.xsd#Role_DisclosureREVENUECONTRACTASSETSANDLIABILITIESANDOTHERCONTRACTMATTERS" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipment3" xlink:href="gifi-20231231.xsd#DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipment3" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebt" xlink:href="gifi-20231231.xsd#DisclosureCreditFacilitiesAndDebt" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONS" xlink:href="gifi-20231231.xsd#Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONS" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureACQUISITION" xlink:href="gifi-20231231.xsd#Role_DisclosureACQUISITION" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIMPAIRMENTSANDGAINLOSSONASSETSHELDFORSALE" xlink:href="gifi-20231231.xsd#Role_DisclosureIMPAIRMENTSANDGAINLOSSONASSETSHELDFORSALE" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureINCOMETAXES" xlink:href="gifi-20231231.xsd#Role_DisclosureINCOMETAXES" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRETIREMENTANDLONGTERMINCENTIVEPLANS" xlink:href="gifi-20231231.xsd#Role_DisclosureRETIREMENTANDLONGTERMINCENTIVEPLANS" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCOMMITMENTSANDCONTINGENCIES" xlink:href="gifi-20231231.xsd#Role_DisclosureCOMMITMENTSANDCONTINGENCIES" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquity1" xlink:href="gifi-20231231.xsd#DisclosureIncomeLossPerShareAndShareholdersEquity1" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOPERATINGSEGMENTS" xlink:href="gifi-20231231.xsd#Role_DisclosureOPERATINGSEGMENTS" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureQUARTERLYFINANCIALINFORMATIONUNAUDITED" xlink:href="gifi-20231231.xsd#Role_DisclosureQUARTERLYFINANCIALINFORMATIONUNAUDITED" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEvents1" xlink:href="gifi-20231231.xsd#DisclosureSubsequentEvents1" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:href="gifi-20231231.xsd#Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesTables" xlink:href="gifi-20231231.xsd#Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables" xlink:href="gifi-20231231.xsd#Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables" xlink:href="gifi-20231231.xsd#DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtTables" xlink:href="gifi-20231231.xsd#DisclosureCreditFacilitiesAndDebtTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONSTables" xlink:href="gifi-20231231.xsd#Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONSTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureAcquisitionTables" xlink:href="gifi-20231231.xsd#Role_DisclosureAcquisitionTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureImpairmentsAndGainLossOnAssetsHeldForSaleTables" xlink:href="gifi-20231231.xsd#Role_DisclosureImpairmentsAndGainLossOnAssetsHeldForSaleTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables" xlink:href="gifi-20231231.xsd#Role_DisclosureIncomeTaxesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansTables" xlink:href="gifi-20231231.xsd#Role_DisclosureRetirementAndLongTermIncentivePlansTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityTables" xlink:href="gifi-20231231.xsd#DisclosureIncomeLossPerShareAndShareholdersEquityTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsTables" xlink:href="gifi-20231231.xsd#Role_DisclosureOperatingSegmentsTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureQuarterlyFinancialInformationUnauditedTables" xlink:href="gifi-20231231.xsd#Role_DisclosureQuarterlyFinancialInformationUnauditedTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails" xlink:href="gifi-20231231.xsd#DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails" xlink:href="gifi-20231231.xsd#DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails" xlink:href="gifi-20231231.xsd#DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails" xlink:type="simple"/>
        <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:title="labelLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesRelatedToDeductiblesTotal" xlink:label="gifi_ChargesRelatedToDeductiblesTotal"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInterestPayableNet" xlink:label="us-gaap_IncreaseDecreaseInInterestPayableNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OperatingCyclePolicyPolicyTextBlock" xlink:label="gifi_OperatingCyclePolicyPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TargetAmountPayableWithPerformancePeriod" xlink:label="gifi_TargetAmountPayableWithPerformancePeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerCMember" xlink:label="gifi_CustomerCMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember" xlink:label="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy" xlink:label="us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale" xlink:label="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember" xlink:label="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:label="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels" xlink:label="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" xlink:label="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAnnualPrincipalPayment" xlink:label="us-gaap_DebtInstrumentAnnualPrincipalPayment"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets" xlink:label="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock" xlink:label="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateDescription" xlink:label="us-gaap_DebtInstrumentMaturityDateDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MaturitiesOfLongTermDebtAbstract" xlink:label="us-gaap_MaturitiesOfLongTermDebtAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock" xlink:label="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoveragesTerminationDate" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock" xlink:label="us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="us-gaap_DeferredTaxAssetsOther"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionDomain" xlink:label="us-gaap_TransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HurricaneLauraMember" xlink:label="gifi_HurricaneLauraMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAmortizationAndAccretionNet" xlink:label="us-gaap_DepreciationAmortizationAndAccretionNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:label="us-gaap_UnusualRiskOrUncertaintyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnsecuredDebt" xlink:label="us-gaap_UnsecuredDebt"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BalanceSheetDateClassifiedAsNoncurrentMember" xlink:label="gifi_BalanceSheetDateClassifiedAsNoncurrentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CapitalExpendituresExcludedFromAccountsPayable" xlink:label="gifi_CapitalExpendituresExcludedFromAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember" xlink:label="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentIssuedPrincipal" xlink:label="us-gaap_DebtInstrumentIssuedPrincipal"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock" xlink:label="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DateOfLandfallOccurred" xlink:label="gifi_DateOfLandfallOccurred"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesRelatedToDamageDueToLandfall" xlink:label="gifi_ChargesRelatedToDamageDueToLandfall"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" xlink:label="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProjectsPercentComplete" xlink:label="gifi_ProjectsPercentComplete"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDivestedShipyardContracts" xlink:label="gifi_NumberOfDivestedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="us-gaap_TypeOfArrangementAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OtherIncomeExpenseNetPolicyTextBlock" xlink:label="gifi_OtherIncomeExpenseNetPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="us-gaap_OtherIntangibleAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashNoncurrent" xlink:label="us-gaap_RestrictedCashNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome" xlink:label="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SignificantAccountingPoliciesTable" xlink:label="gifi_SignificantAccountingPoliciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressMember" xlink:label="us-gaap_ConstructionInProgressMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PaymentsOnInsuranceFinanceArrangement" xlink:label="gifi_PaymentsOnInsuranceFinanceArrangement"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TransactionAndOtherCosts" xlink:label="gifi_TransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentContinuingOperationsMember" xlink:label="us-gaap_SegmentContinuingOperationsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NatureOfOperationsPolicyTextBlock" xlink:label="gifi_NatureOfOperationsPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts" xlink:label="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoveragesTerminated" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminated"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EstimatedCostOfConsoleReplacement" xlink:label="gifi_EstimatedCostOfConsoleReplacement"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromInsuranceSettlementOperatingActivities" xlink:label="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AssetsHeldForSalePolicyTextBlock" xlink:label="gifi_AssetsHeldForSalePolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentDecreaseForgiveness" xlink:label="us-gaap_DebtInstrumentDecreaseForgiveness"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandMember" xlink:label="us-gaap_LandMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" xlink:label="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubleaseIncome" xlink:label="us-gaap_SubleaseIncome"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:label="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan" xlink:label="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransportationEquipmentMember" xlink:label="us-gaap_TransportationEquipmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfCorporateNonOperatingSegments" xlink:label="gifi_NumberOfCorporateNonOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings" xlink:label="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BollingerMember" xlink:label="gifi_BollingerMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" xlink:label="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DebtInstrumentPaymentsOfLoan" xlink:label="gifi_DebtInstrumentPaymentsOfLoan"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ImpactOfHurricaneIdaDescription" xlink:label="gifi_ImpactOfHurricaneIdaDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:label="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PrecontractCostPolicyTextBlock" xlink:label="gifi_PrecontractCostPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorName" xlink:label="dei_AuditorName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentOperatingActivitiesDomain" xlink:label="us-gaap_SegmentOperatingActivitiesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:label="us-gaap_StatementOperatingActivitiesSegmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CapitalizedContractCostBillingsToDate" xlink:label="gifi_CapitalizedContractCostBillingsToDate"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoverages" xlink:label="gifi_SuretyContractsOfInsuranceCoverages"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxLiabilitiesDepreciation" xlink:label="gifi_DeferredTaxLiabilitiesDepreciation"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesAssociatedWithDamageCausedByHurricane" xlink:label="gifi_ChargesAssociatedWithDamageCausedByHurricane"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OtherBasisOfPricingMember" xlink:label="gifi_OtherBasisOfPricingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialLiabilities" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerBMember" xlink:label="gifi_CustomerBMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntersegmentEliminationMember" xlink:label="us-gaap_IntersegmentEliminationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfMachineryAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainOnInterruptionsInsuranceRecovery" xlink:label="gifi_GainOnInterruptionsInsuranceRecovery"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerAMember" xlink:label="gifi_CustomerAMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="us-gaap_DebtInstrumentInterestRateTerms"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBonds" xlink:label="gifi_SuretyBonds"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermContractWithCustomerMember" xlink:label="us-gaap_LongTermContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareRepurchaseProgramMember" xlink:label="gifi_ShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateRangeStart1" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeStart1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision" xlink:label="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramExpirationDate" xlink:label="us-gaap_StockRepurchaseProgramExpirationDate"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:label="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfMultiPurposeServiceVesselsProjects" xlink:label="gifi_NumberOfMultiPurposeServiceVesselsProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesForDamage" xlink:label="gifi_ChargesForDamage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset" xlink:label="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PercentageOfProvisionRequiredFromProceedsReceived" xlink:label="gifi_PercentageOfProvisionRequiredFromProceedsReceived"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainOnSettlementOfContractDispute" xlink:label="gifi_GainOnSettlementOfContractDispute"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTransactionPrice" xlink:label="gifi_DeferredTransactionPrice"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsLiabilitiesGross" xlink:label="gifi_DeferredTaxAssetsLiabilitiesGross"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PromissoryNoteMember" xlink:label="gifi_PromissoryNoteMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HoumaFacilitiesMember" xlink:label="gifi_HoumaFacilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:label="us-gaap_UnusualRiskOrUncertaintyByNatureAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="us-gaap_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateRangeEnd1" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeEnd1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLossCarryforwardsLimitationsOnUse" xlink:label="us-gaap_OperatingLossCarryforwardsLimitationsOnUse"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedCustomerRelationshipsGross" xlink:label="us-gaap_FiniteLivedCustomerRelationshipsGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AllocatedShareBasedCompensationExpenseReversed" xlink:label="gifi_AllocatedShareBasedCompensationExpenseReversed"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationAndServicesSegmentMember" xlink:label="gifi_FabricationAndServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NetReceivableAmountPurportedLiquidatedDamages" xlink:label="gifi_NetReceivableAmountPurportedLiquidatedDamages"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:label="gifi_LongTermContractsOrProgramsDisclosureLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="us-gaap_RelatedPartyTransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain" xlink:label="us-gaap_LossContingencyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:label="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockNoParValue" xlink:label="us-gaap_PreferredStockNoParValue"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashBasedPerformanceAwardsMember" xlink:label="gifi_CashBasedPerformanceAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardAssetsMember" xlink:label="gifi_ShipyardAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TimeBasedRSUAwardsMember" xlink:label="gifi_TimeBasedRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts" xlink:label="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FerryProjectsMember" xlink:label="gifi_FerryProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetLiabilityNet" xlink:label="gifi_ContractWithCustomerAssetLiabilityNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="us-gaap_DebtInstrumentPaymentTerms"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardTransactionsMember" xlink:label="gifi_ShipyardTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialAssets" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingImprovementsMember" xlink:label="us-gaap_BuildingImprovementsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" xlink:label="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashCurrent" xlink:label="us-gaap_RestrictedCashCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NetOfEstimatedTransactionAndOtherCosts" xlink:label="gifi_NetOfEstimatedTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SeventyVehicleFerryMember" xlink:label="gifi_SeventyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TimeAndMaterialsAndCostReimbursableMember" xlink:label="gifi_TimeAndMaterialsAndCostReimbursableMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FortyVehicleFerryMember" xlink:label="gifi_FortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BalanceSheetDateClassifiedAsCurrentMember" xlink:label="gifi_BalanceSheetDateClassifiedAsCurrentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="us-gaap_RelatedPartyTransactionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:label="us-gaap_SegmentExpenditureAdditionToLongLivedAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="us-gaap_IncomeTaxContingencyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGrossAbstract" xlink:label="us-gaap_DeferredTaxAssetsGrossAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuredEventGainLoss" xlink:label="us-gaap_InsuredEventGainLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFinStmtErrorCorrectionFlag" xlink:label="dei_DocumentFinStmtErrorCorrectionFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" xlink:label="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LetterOfCreditMember" xlink:label="us-gaap_LetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PerformanceBasedRSUAwardsMember" xlink:label="gifi_PerformanceBasedRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts" xlink:label="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainLossOnInsuranceRecovery" xlink:label="gifi_GainLossOnInsuranceRecovery"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" xlink:label="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DisclosureOfSignificantCustomersTableTextBlock" xlink:label="gifi_DisclosureOfSignificantCustomersTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShortTermDebtRemainingPrincipalBalance" xlink:label="gifi_ShortTermDebtRemainingPrincipalBalance"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashSettledRSUAwardsMember" xlink:label="gifi_CashSettledRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FixedPriceContractMember" xlink:label="us-gaap_FixedPriceContractMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShortTermPremiumFinanceArrangementMember" xlink:label="gifi_ShortTermPremiumFinanceArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:label="us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RevenueVariableConsiderationContractPriceReduction" xlink:label="gifi_RevenueVariableConsiderationContractPriceReduction"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="us-gaap_LettersOfCreditOutstandingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:label="srt_CumulativeEffectPeriodOfAdoptionDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate201613Member" xlink:label="us-gaap_AccountingStandardsUpdate201613Member"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LongTermContractsOrProgramsDisclosureTable" xlink:label="gifi_LongTermContractsOrProgramsDisclosureTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherOperatingIncomeExpenseNet" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" xlink:label="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations" xlink:label="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="us-gaap_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HurricaneIdaMember" xlink:label="gifi_HurricaneIdaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherOperatingIncomeExpenseMember" xlink:label="us-gaap_OtherOperatingIncomeExpenseMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForLegalSettlements" xlink:label="us-gaap_PaymentsForLegalSettlements"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PPPLoanMember" xlink:label="gifi_PPPLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="us-gaap_CapitalizedContractCostNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="us-gaap_IncomeTaxContingencyTable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RemainingFortyVehicleFerryMember" xlink:label="gifi_RemainingFortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1" xlink:label="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DomesticCountryMember" xlink:label="us-gaap_DomesticCountryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GeneralLiabilityArrangementMember" xlink:label="gifi_GeneralLiabilityArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SignificantAccountingPoliciesLineItems" xlink:label="gifi_SignificantAccountingPoliciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LCFacilityMember" xlink:label="gifi_LCFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionTypeAxis" xlink:label="us-gaap_TransactionTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromPropertyInsurancePolicy" xlink:label="gifi_ProceedsFromPropertyInsurancePolicy"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" xlink:label="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TowingSalvageAndRescueShipMember" xlink:label="gifi_TowingSalvageAndRescueShipMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesAbstract" xlink:label="us-gaap_DeferredTaxLiabilitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock" xlink:label="us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue" xlink:label="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SuretyBondMember" xlink:label="us-gaap_SuretyBondMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="us-gaap_DeferredTaxAssetsGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBondsSubjectToDispute" xlink:label="gifi_SuretyBondsSubjectToDispute"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsDebtInterest" xlink:label="gifi_DeferredTaxAssetsDebtInterest"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceRecoveries" xlink:label="us-gaap_InsuranceRecoveries"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsLeases" xlink:label="gifi_DeferredTaxAssetsLeases"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RightOfUseAssetMember" xlink:label="gifi_RightOfUseAssetMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsNet" xlink:label="us-gaap_OtherIntangibleAssetsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MpsvLitigationMember" xlink:label="gifi_MpsvLitigationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractAssetUnderDisputeNoncurrent" xlink:label="gifi_ContractAssetUnderDisputeNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:label="us-gaap_InsuranceSettlementsReceivableNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockNoParValue" xlink:label="us-gaap_CommonStockNoParValue"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NoteAgreementMember" xlink:label="gifi_NoteAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" xlink:label="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCash" xlink:label="us-gaap_RestrictedCash"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LakeCharlesLouisianaMember" xlink:label="gifi_LakeCharlesLouisianaMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PPPLoanThresholdRequiringAuditBySBA" xlink:label="gifi_PPPLoanThresholdRequiringAuditBySBA"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" xlink:label="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember" xlink:label="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:label="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HeldToMaturitySecuritiesCurrent" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerReserveForLoss" xlink:label="gifi_ContractWithCustomerReserveForLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDrydocks" xlink:label="gifi_NumberOfDrydocks"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermContractWithCustomerMember" xlink:label="us-gaap_ShortTermContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" xlink:label="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncomeLossPerShareAndShareholdersEquityTextBlock" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate" xlink:label="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" xlink:label="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerDurationDomain" xlink:label="us-gaap_ContractWithCustomerDurationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="us-gaap_StateAndLocalJurisdictionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LitigationExpenseAssociatedWithRecordingLiability" xlink:label="gifi_LitigationExpenseAssociatedWithRecordingLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock" xlink:label="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LeaseDescription" xlink:label="gifi_LeaseDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseDiscountRate" xlink:label="us-gaap_LesseeOperatingLeaseDiscountRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LossContingencyUnderPerformanceBondsIssued" xlink:label="gifi_LossContingencyUnderPerformanceBondsIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerDurationAxis" xlink:label="us-gaap_ContractWithCustomerDurationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractReceivableDueOneYearOrLess" xlink:label="us-gaap_ContractReceivableDueOneYearOrLess"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestments" xlink:label="us-gaap_ShortTermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm" xlink:label="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireShortTermInvestments" xlink:label="us-gaap_PaymentsToAcquireShortTermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerDMember" xlink:label="gifi_CustomerDMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfResearchVesselsProjects" xlink:label="gifi_NumberOfResearchVesselsProjects"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:label="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncomeLossPerShareAndShareholdersEquityAbstract" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_JenningsLouisianaMember" xlink:label="gifi_JenningsLouisianaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts" xlink:label="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OtherIncomeExpenseNetMember" xlink:label="gifi_OtherIncomeExpenseNetMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DSSAcquisitionMember" xlink:label="gifi_DSSAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SecondFortyVehicleFerryMember" xlink:label="gifi_SecondFortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OperatingLossCarryforwardsSubjectToExpire" xlink:label="gifi_OperatingLossCarryforwardsSubjectToExpire"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts" xlink:label="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold" xlink:label="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfVehicleFerryProjects" xlink:label="gifi_NumberOfVehicleFerryProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent" xlink:label="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation" xlink:label="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedContractCostGross" xlink:label="us-gaap_CapitalizedContractCostGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="us-gaap_OperatingLossCarryforwards"/>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesRelatedToDeductiblesTotal_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total charges related to deductibles</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesRelatedToDeductiblesTotal_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Charges Related To Deductibles Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesRelatedToDeductiblesTotal_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Charges related to deductibles total.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AuditorFirmId_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Auditor Firm ID</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AuditorFirmId_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Auditor Firm ID</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInterestPayableNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued interest expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInterestPayableNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Interest Payable, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2024</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Collaborative Arrangement and Arrangement Other than Collaborative [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentTransitionReport_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Transition Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentTransitionReport_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Transition Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Carrying value of asset held for sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Assets held for sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group, Including Discontinued Operation, Assets, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Disposal Group, Including Discontinued Operation, Assets, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Remaining performance obligation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue, Remaining Performance Obligation, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingCyclePolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating Cycle</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingCyclePolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Cycle Policy Policy [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingCyclePolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Operating Cycle Policy.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TargetAmountPayableWithPerformancePeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Target amounts payable associated with performance period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TargetAmountPayableWithPerformancePeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Target Amount Payable With Performance Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TargetAmountPayableWithPerformancePeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Target amount payable with performance period.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_StatementGeographicalAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Geographical</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_StatementGeographicalAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Geographical [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer C</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer C [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Customer C [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">RSU awards vesting period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">QUARTERLY FINANCIAL INFORMATION (UNAUDITED)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Quarterly Financial Information [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Marine Docking Structures, Offshore Modules and Material Supply Projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Marine Docking Structures Offshore Modules And Material Supply Projects [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Marine docking structures, offshore modules and material supply projects.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Other Liabilities, Noncurrent, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other noncurrent liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Liabilities, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Segment Reporting Information By Segment [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">RSUs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Stock Units (RSUs) [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Allowance for Doubtful Accounts and Credit Losses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Property, plant and equipment, reclassification to held-for-sale.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property Plantand Equipment Reclassificationto Heldforsale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Reclassification of property, plant and equipment to assets held for sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityPublicFloat_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Public Float</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityPublicFloat_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Public Float</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Change in estimated margins</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract With Customer Asset Cumulative Catch Up Adjustment To Revenue Change In Estimated Margins</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract with customer, asset, cumulative catch-up adjustment to revenue, change in estimated margins.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2027</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Property, plant and equipment, estimated useful life</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property, plant and equipment, useful life</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment, Useful Life</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Revenue (eliminations)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Revenue from Contract with Customer, Excluding Assessed Tax, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Insurance Finance and General Liability Arrangements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Insurance Finance And General Liability Arrangements Member</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Insurance finance and general liability.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Valuation allowance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Disaggregation of Revenue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disaggregation of Revenue [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_IcfrAuditorAttestationFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">ICFR Auditor Attestation Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_IcfrAuditorAttestationFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label">ICFR Auditor Attestation Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Contract liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Liability, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">SUBSEQUENT EVENTS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Events [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of multi-purpose service vessels</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Construction In Progress Number Of Multi Purpose Service Vessels</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Construction in progress, number of multi-purpose service vessels.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Increase to beginning accumulated deficit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retained Earnings Increase Decrease in Accumulated Deficit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Retained earnings increase decrease in accumulated deficit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentAnnualPrincipalPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Annual Principal Payment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentAnnualPrincipalPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Principal payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Decrease to contract receivables and retainage, net and contract assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Decrease to Contract Receivables and Retainage, Net and Contract Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Decrease to contract receivables and retainage, net and contract assets.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-term lease liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Repurchases of common stock (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Repurchases of common stock (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Repurchased During Period, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">RETIREMENT AND LONG-TERM INCENTIVE PLANS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retirement Plan And Stock Incentive Plans Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Retirement Plan And Stock Incentive Plans Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDateDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maturity date, description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDateDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Maturity Date, Description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MaturitiesOfLongTermDebtAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Maturities of Long-Term Debt [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Statement Balance Sheet And Additional Disclosures By Disposal Groups Including Discontinued Operations [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Groups, Including Discontinued Operations [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revision of Previously Issued Financial Statements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revision Of Previously Issued Financial Statements Policy [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Revision of previously issued financial statements.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surety contracts of insurance coverages termination date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surety Contracts of Insurance Coverages Termination Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Surety contracts of insurance coverages termination date.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Balance Sheet Location</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Balance Sheet Location [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Assets Held for Sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disclosure of Long-Lived Assets Held-for-Sale [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total current assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total current assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total liabilities and shareholders&#8217; equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total liabilities and shareholders&#8217; equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities and Equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, State or Province</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, State or Province</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_LitigationCaseTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Litigation Case [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOther_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOther_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TransactionDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Transaction</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TransactionDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Transaction [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Outstanding stock option awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HurricaneLauraMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Hurricane Laura</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HurricaneLauraMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Hurricane Laura [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HurricaneLauraMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Hurricane Laura.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_TradingSymbol_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Trading Symbol</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_TradingSymbol_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Trading Symbol</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Common Stock, Shares, Issued, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, shares issued (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vesting of common stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2025</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturity, Year Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total fair value of shares vested</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationAmortizationAndAccretionNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Depreciation, Amortization and Accretion, Net, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationAmortizationAndAccretionNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Depreciation expense for continuing operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationAmortizationAndAccretionNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Depreciation, Amortization and Accretion, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue Remaining Performance Obligation Expected Timing Of Satisfaction [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Long-Term Debt Instruments [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2026</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">ACQUISITION</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maximum number of shares available for grant for each employee (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Maximum Number of Shares Per Employee</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-term debt, current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Current Maturities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Long-Term Debt, Current Maturities, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UnusualRiskOrUncertaintyNatureDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unusual Risk or Uncertainty, Nature</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UnusualRiskOrUncertaintyNatureDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Unusual Risk or Uncertainty, Nature [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UnsecuredDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Unsecured Debt, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UnsecuredDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unsecured loan amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UnsecuredDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Unsecured Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BalanceSheetDateClassifiedAsNoncurrentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Balance Sheet Date Classified as Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BalanceSheetDateClassifiedAsNoncurrentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Balance Sheet Date Classified As Noncurrent [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BalanceSheetDateClassifiedAsNoncurrentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Balance sheet date classified as noncurrent.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, City or Town</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, City or Town</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Lease renewal term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Renewal Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">CREDIT FACILITIES AND DEBT</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Property, Plant and Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalExpendituresExcludedFromAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Capital expenditures excluded from accounts payable.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalExpendituresExcludedFromAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Capital Expenditures Excluded From Accounts Payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalExpendituresExcludedFromAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts payable excluded from capital expenditures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Event</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Event Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Retained Shipyard Contracts And Other Shipyard Division Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retained Shipyard Contracts And Other Shipyard Division Liabilities [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Retained shipyard contracts and other shipyard division liabilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Additional Paid-In Capital</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Additional Paid-in Capital [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Components of Income Tax Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentIssuedPrincipal_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument, issued, principal</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentIssuedPrincipal_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Issued, Principal</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current liabilities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Current [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current assets:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Current [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Reclassification of Previously Reported Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Summary Of Reclassification Of Previously Reported Segments Table [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Tabular disclosure of reclassification of previously reported segment.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Stockholders' Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DateOfLandfallOccurred_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Date of landfall</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DateOfLandfallOccurred_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Date Of Landfall Occurred</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DateOfLandfallOccurred_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Date of landfall occurred.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Net operating liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current lease liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maturity date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Maturity Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total maturities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Property, Plant and Equipment, Net, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Property, Plant and Equipment, Net, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Property, plant and equipment, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property, plant and equipment, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesRelatedToDamageDueToLandfall_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Charges related to damage caused by landfall</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesRelatedToDamageDueToLandfall_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Charges Related To Damage Due To Landfall</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesRelatedToDamageDueToLandfall_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Charges related to damage due to landfall.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vesting of restricted stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Adjustments To Additional Paid In Capital Share Based Compensation Vesting Of Restricted Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Adjustments to additional paid in capital share based compensation vesting of restricted stock.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProjectsPercentComplete_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Projects, percent complete (percentage)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProjectsPercentComplete_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Projects Percent Complete</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProjectsPercentComplete_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Projects, Percent Complete</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDivestedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of divested shipyard contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDivestedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Divested Shipyard Contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDivestedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of divested shipyard contracts.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Change in allowance for doubtful accounts and credit losses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">U.S. statutory rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TypeOfArrangementAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Collaborative Arrangement and Arrangement Other than Collaborative [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherIncomeExpenseNetPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other (Income) Expense, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherIncomeExpenseNetPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Income Expense Net Policy [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherIncomeExpenseNetPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Other (income) expense, net.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCentralIndexKey_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Central Index Key</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCentralIndexKey_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Central Index Key</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherIntangibleAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other Intangible Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherIntangibleAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Intangible Assets [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCashNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted cash, noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCashNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Cash, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Preferred Stock, Shares Outstanding, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Preferred Stock, Shares Outstanding, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares outstanding (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating loss carryforwards limitation rate on taxable income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Loss Carryforwards Limitation Rate On Taxable Income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Operating loss carryforwards limitation rate on taxable income.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Tax Identification Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Tax Identification Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Income/loss before income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Loss before income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Changes in operating assets and liabilities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Operating Capital [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SignificantAccountingPoliciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Significant Accounting Policies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SignificantAccountingPoliciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Significant Accounting Policies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SignificantAccountingPoliciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Significant Accounting Policies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock based compensation expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Line Of Credit Facility [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConstructionInProgressMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Construction in progress</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConstructionInProgressMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Construction in Progress [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AwardTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Award Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AwardTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Award Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PaymentsOnInsuranceFinanceArrangement_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Payments on Insurance Finance Arrangement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PaymentsOnInsuranceFinanceArrangement_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments On Insurance Finance Arrangement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PaymentsOnInsuranceFinanceArrangement_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Payments on insurance finance arrangement.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_SegmentGeographicalDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Geographical</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_SegmentGeographicalDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Geographical [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease, term of contract</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Term of Contract</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Assets_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Assets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Assets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Transaction and other costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Transaction And Other Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Transaction and other costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease, right-of-use asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Right-of-Use Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Line Of Credit Facility [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentContinuingOperationsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Continuing Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentContinuingOperationsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Continuing Operations [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityRegistrantName_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Registrant Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityRegistrantName_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Registrant Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Increase to beginning accumulated deficit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Retained Earnings (Accumulated Deficit), Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Retained Earnings (Accumulated Deficit), Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Retained Earnings (Accumulated Deficit), Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retained Earnings (Accumulated Deficit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated deficit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NatureOfOperationsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Nature of Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NatureOfOperationsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Nature Of Operations Policy [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NatureOfOperationsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Nature of operations.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued losses on uncompleted contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets Accrued Losses On Uncompleted Contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Deferred tax assets, Accrued losses on uncompleted contracts.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminated_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surety contracts of insurance coverages terminated</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminated_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surety Contracts of Insurance Coverages Terminated</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminated_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Surety contracts of insurance coverages terminated.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Supplemental cash flow information:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supplemental Cash Flow Information [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EstimatedCostOfConsoleReplacement_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Estimated cost of console replacement.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EstimatedCostOfConsoleReplacement_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Estimated Cost of Console Replacement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EstimatedCostOfConsoleReplacement_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Estimated cost of console replacement range</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Insurance Settlement, Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Insurance payments received</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total income tax (expense) benefit under share-based compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Expense, Tax Benefit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated Deficit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retained Earnings [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">RSUs shares at the beginning of period (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">RSUs shares at the end of period (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Gain (Loss) on Disposition of Assets, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gain (loss) on sale of assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gain (Loss) on Disposition of Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Loss on sale or disposal of fixed assets, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AssetsHeldForSalePolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Assets Held for Sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AssetsHeldForSalePolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets Held For Sale Policy [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AssetsHeldForSalePolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Assets Held For Sale [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MinimumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Minimum</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MinimumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Minimum [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Net operating liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Present value of lease payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Present value of lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentDecreaseForgiveness_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Letter of credit facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentDecreaseForgiveness_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Decrease, Forgiveness</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity Component</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity Component [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementBusinessSegmentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementBusinessSegmentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segments [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LandMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Land</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LandMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Land [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Return to provision and other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Reconciliation Return To Provision And Other Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Effective income tax reconciliation return to provision and other percent.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Adjustments to reconcile net loss to net cash provided by (used in) operating activities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubleaseIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Sublease Income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubleaseIncome_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Sublease income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Increase (decrease) resulting from:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation Increase Decrease Percent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Effective Income Tax Rate Reconciliation, Increase (Decrease), Percent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Forgiveness of principal and interest of PPP Loan</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Forgiveness Of Principal And Interest Of P P P Loan</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Forgiveness of principal and interest of PPP Loan.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCurrentReportingStatus_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Current Reporting Status</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCurrentReportingStatus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Current Reporting Status</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, shares authorized (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares Authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TransportationEquipmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Transportation equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TransportationEquipmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Transportation Equipment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Deferred Tax Liabilities, Gross, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel">Total deferred tax liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Liabilities, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Organization, Consolidation and Presentation of Financial Statements Disclosure and Significant Accounting Policies [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Shipyard Transaction and Discontinued Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amount of shares authorized to be repurchased</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Repurchase Program, Authorized Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Other (income) expense, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other (income) expense, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group Including Discontinued Operation Other Income Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Disposal group including discontinued operation other income (expense).</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">ASSETS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfCorporateNonOperatingSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of corporate non-operating segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfCorporateNonOperatingSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Corporate Non Operating Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfCorporateNonOperatingSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of corporate non-operating segments.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Future repair costs associated with insurance payments received for buildings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Future Repair Costs Associated With Insurance Payments Received For Buildings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Future repair costs associated with insurance payments received for buildings.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue Recognition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BollingerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Bollinger</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BollingerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Bollinger [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BollingerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Bollinger.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization of Intangible Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amortization expense for intangible assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Available shares for future issuance (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Permanent differences</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Reconciliation Permanent Differences Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Effective income tax reconciliation, permanent differences, percent.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DebtInstrumentPaymentsOfLoan_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loan payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DebtInstrumentPaymentsOfLoan_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument Payments Of Loan</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DebtInstrumentPaymentsOfLoan_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Debt instrument payments of loan.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ImpactOfHurricaneIdaDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Impact of Hurricane Ida, description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ImpactOfHurricaneIdaDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Impact Of Hurricane Ida Description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ImpactOfHurricaneIdaDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Impact of Hurricane Ida, description.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, no par value, 30,000 shares authorized, 16,258 issued and outstanding at December 31, 2023 and 15,973 at December 31, 2022</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Common Stock, Value, Issued, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Common Stock, Value, Issued, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Common Stock, Value, Issued, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Value, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Change in valuation allowance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Continuing Operations, Per Diluted Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Diluted loss from continuing operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Discontinued Operation, Tax Effect of Discontinued Operation, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income tax (expense) benefit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Discontinued Operation, Tax Effect of Discontinued Operation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract with customer, liability, revenue recognized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Liability, Revenue Recognized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FurnitureAndFixturesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Furniture and fixtures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FurnitureAndFixturesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Furniture and Fixtures [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PrecontractCostPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Pre-Contract Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PrecontractCostPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Precontract Cost Policy [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PrecontractCostPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Precontract cost.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Accrued Liabilities, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued expenses and other liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current Fiscal Year End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Current Fiscal Year End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Share-based Payment Arrangement, Noncash Expense, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Share-based compensation cost charged against income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-based compensation expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Noncash Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AuditorName_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Auditor Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AuditorName_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Auditor Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Operating income (loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Operating loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Income (Loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentOperatingActivitiesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentOperatingActivitiesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Activities [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOperatingActivitiesSegmentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOperatingActivitiesSegmentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Activities [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalizedContractCostBillingsToDate_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Billings to date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalizedContractCostBillingsToDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Capitalized Contract Cost Billings To Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalizedContractCostBillingsToDate_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Capitalized contract cost billings to date.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoverages_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surety bonds subject to dispute</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoverages_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surety Contracts Of Insurance Coverages</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyContractsOfInsuranceCoverages_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Surety contracts of insurance coverages.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total deferred</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Income tax (expense) benefit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income tax (expense) benefit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel">Income tax (expense) benefit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2027</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturity, Year Four</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Leases [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Prepaid insurance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Liabilities, Prepaid Expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration risk, percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk, Percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance based share compensation expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite-Lived Intangible Assets [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Tax payments for vested stock withholdings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payment, Tax Withholding, Share-Based Payment Arrangement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Disaggregation Of Revenue [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disaggregation of Revenue [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Disposal Groups Including Discontinued Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Groups, Including Discontinued Operations [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Intangible assets, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Finite-Lived Intangible Assets, Net, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Finite-Lived Intangible Assets, Net, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summarized Segment Financial Information</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-Lived Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Corrections</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revision of Prior Period, Error Correction, Adjustment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxLiabilitiesDepreciation_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Depreciation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxLiabilitiesDepreciation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Liabilities Depreciation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxLiabilitiesDepreciation_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Deferred tax liabilities depreciation.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesAssociatedWithDamageCausedByHurricane_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Charges associated with damage caused by Hurricane Laura</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesAssociatedWithDamageCausedByHurricane_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Charges Associated With Damage Caused By Hurricane</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesAssociatedWithDamageCausedByHurricane_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Charges associated with damage caused by Hurricane.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Estimated present value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Face Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Short-term premium finance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income (Loss) Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Adoption of ASU 2016-13</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cumulative Effect, Period of Adoption, Adjustment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherBasisOfPricingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherBasisOfPricingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Basis Of Pricing [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherBasisOfPricingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Other Basis Of Pricing [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityVoluntaryFilers_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Voluntary Filers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityVoluntaryFilers_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Voluntary Filers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash flows from investing activities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Investing Activities, Continuing Operations [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Material liabilities of discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Discontinued Operation Amounts Of Material Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Discontinued operation amounts of material liabilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Events [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerBMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer B</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerBMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer B [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerBMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Customer B [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Other Assets, Noncurrent, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other noncurrent assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Assets, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group, Including Discontinued Operation, Revenue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock option awards granted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Cash based performance award granted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntersegmentEliminationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Eliminations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntersegmentEliminationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Intersegment Eliminations [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestPaidNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestPaidNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleOfMachineryAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from sale of property and equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleOfMachineryAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Sale of Machinery and Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainOnInterruptionsInsuranceRecovery_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Gain on interruptions insurance recovery.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainOnInterruptionsInsuranceRecovery_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gain on interruptions insurance recovery</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Cash Used to Settle Award</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash-settled RSU paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerAMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer A</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerAMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer A [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerAMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Customer A [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Additional Paid in Capital, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Additional Paid in Capital, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Additional Paid in Capital, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Additional paid-in capital</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Additional Paid in Capital</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateTerms_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument, interest rate terms</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateTerms_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Interest Rate Terms</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Shareholders&#8217; equity:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity, Attributable to Parent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBonds_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surety bonds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBonds_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surety Bonds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBonds_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Surety Bonds</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermContractWithCustomerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Contract with Customer [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermContractWithCustomerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-Term Contract with Customer</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss Contingency Nature</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loss Contingency Nature [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gain or loss recognized on sale of purchase option</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gain (Loss) on Disposition of Property Plant Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Gain (Loss) on Disposition of Property Plant Equipment, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Cost of Goods and Services Sold, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cost of revenue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cost of Goods and Services Sold</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Per share data:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Minimum Rental Payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss Contingencies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loss Contingencies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_LitigationCaseAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Litigation Case [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Repurchase Program</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Repurchase Program [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share Repurchase Program.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeStart1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument, maturity date, start</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeStart1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Maturity Date Range, Start</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Deferred Tax Liabilities, Net, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilities_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel">Net deferred taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Liabilities, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segments [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from sale of real estate required to make provision</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds From Sale of Real Estate Required to Make Provision</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Proceeds from sale of real estate required to make provision.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash flows from operating activities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Operating Activities, Continuing Operations [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchaseProgramExpirationDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock repurchase program, expiration date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchaseProgramExpirationDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Repurchase Program Expiration Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Based Payments And Retirement Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share-based Payments and Retirement Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Proforma Information</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Pro Forma Information [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfMultiPurposeServiceVesselsProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of MPSV projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfMultiPurposeServiceVesselsProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Multi Purpose Service Vessels Projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfMultiPurposeServiceVesselsProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of multi purpose service vessels projects.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesForDamage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Charges for damage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesForDamage_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Charges For Damage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesForDamage_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Charges for damage.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share, Basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Basic loss per share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basic loss per common share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerConcentrationRiskMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer Concentration Risk</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerConcentrationRiskMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer Concentration Risk [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Litigation charge associated with write-off of net contract asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Litigation Expense Associated With Write-off of Net Contract Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Litigation expense associated with write-off of net contract asset.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Acquisition costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination, Acquisition Related Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Statement [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PercentageOfProvisionRequiredFromProceedsReceived_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Percentage of provision required from proceeds received in excess of sale of real estate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PercentageOfProvisionRequiredFromProceedsReceived_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Percentage of Provision Required From Proceeds Received</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PercentageOfProvisionRequiredFromProceedsReceived_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Percentage of provision required from proceeds received.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PerformanceSharesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PerformanceSharesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Performance Shares [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Contract with Customer, Asset and Liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainOnSettlementOfContractDispute_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Gain on settlement of contract dispute</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainOnSettlementOfContractDispute_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gain on settlement of contract dispute for project completed in 2015</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainOnSettlementOfContractDispute_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gain On Settlement Of Contract Dispute</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainOnSettlementOfContractDispute_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Gain on settlement of contract dispute.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTransactionPrice_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred transaction price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTransactionPrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Transaction Price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTransactionPrice_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Deferred transaction price.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statistical Measurement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statistical Measurement [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss Contingencies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loss Contingencies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Approved change order from increased contract price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract With Customer Asset Cumulative Catch Up Adjustment To Revenue Approved Change Order</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract with customer asset cumulative catch-up adjustment to revenue approved change order.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net cash provided by (used in) operating activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsLiabilitiesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net deferred tax assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsLiabilitiesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets Liabilities Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsLiabilitiesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Deferred tax assets (liabilities), gross.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PromissoryNoteMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Promissory Note</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PromissoryNoteMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Promissory note [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PromissoryNoteMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Promissory note.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Loss from continuing operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss from continuing operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ServicesSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Services</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ServicesSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Services Segment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ServicesSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Services segment.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Award Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">All Award Types</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Period End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Period End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statistical Measurement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statistical Measurement [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Allowance for doubtful accounts and credit losses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Receivable, Allowance for Credit Loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Accounts Receivable, Allowance for Credit Loss, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Accounts Receivable, Allowance for Credit Loss, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HoumaFacilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Houma Facilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HoumaFacilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Houma Facilities [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HoumaFacilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Houma facilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">COMMITMENTS AND CONTINGENCIES</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UnusualRiskOrUncertaintyByNatureAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unusual Risk or Uncertainty, Nature</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UnusualRiskOrUncertaintyByNatureAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Unusual Risk or Uncertainty, Nature [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeasePayments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeasePayments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareRepurchaseProgramAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Repurchase Program [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share, Diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Diluted loss per share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Diluted loss per common share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeEnd1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument, maturity date, end</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeEnd1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Maturity Date Range, End</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductsAndServicesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Product and Service</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductsAndServicesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product and Service [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwardsLimitationsOnUse_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating loss carryforwards, limitations on use, description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwardsLimitationsOnUse_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Loss Carryforwards, Limitations on Use</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedCustomerRelationshipsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer relationships</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedCustomerRelationshipsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Customer Relationships, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Deferred Tax Assets, Operating Loss Carryforwards, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Federal net operating losses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Operating Loss Carryforwards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AllocatedShareBasedCompensationExpenseReversed_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance based share compensation benefit due to reversal of previously recognized expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AllocatedShareBasedCompensationExpenseReversed_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Allocated Share Based Compensation Expense Reversed</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AllocatedShareBasedCompensationExpenseReversed_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Allocated share based compensation expense reversed.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">State net operating losses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Operating Loss Carryforwards, State and Local</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk Benchmark</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk Benchmark [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Thereafter</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturity, after Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FabricationAndServicesSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">F&amp;S</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FabricationAndServicesSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fabrication And Services Segment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FabricationAndServicesSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Fabrication and Services Segment.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NetReceivableAmountPurportedLiquidatedDamages_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Net receivable amount purported liquidated damages.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NetReceivableAmountPurportedLiquidatedDamages_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Receivable Amount Purported Liquidated Damages</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NetReceivableAmountPurportedLiquidatedDamages_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net receivable amount purported liquidated damages</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LongTermContractsOrProgramsDisclosureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long Term Contracts Or Programs Disclosure [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LongTermContractsOrProgramsDisclosureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long Term Contracts Or Programs Disclosure [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LongTermContractsOrProgramsDisclosureLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Long-term Contracts or Programs Disclosure [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Transaction price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group, Including Discontinued Operation, Consideration</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Related Party Transaction</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Related Party Transaction [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingencyNatureDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss Contingency, Nature</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LossContingencyNatureDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loss Contingency, Nature [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Disposal Group, Held-for-sale, Not Discontinued Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group, Held-for-Sale, Not Discontinued Operations [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Assets Held-for-sale, Not Part of Disposal Group, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Asset, Held-for-Sale, Not Part of Disposal Group, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Assets held for sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventory</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Future Annual Principal Maturities Under Note Agreement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Maturities of Long-Term Debt [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockNoParValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, no par value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockNoParValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, No Par Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashBasedPerformanceAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash-Based Performance Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashBasedPerformanceAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Based Performance Awards [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashBasedPerformanceAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Cash-based performance awards.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Repurchases of common stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments for Repurchase of Common Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">After Adoption of ASU 2016-13</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cumulative Effect, Period of Adoption, Adjusted Balance [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finite-Lived Intangible Assets, Major Class Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities and Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, Postal Zip Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, Postal Zip Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Prospect Shipyard</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shipyard Assets [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardAssetsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Shipyard Assets [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Interactive Data Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Interactive Data Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TimeBasedRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Time-based RSU Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TimeBasedRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Time Based R S U Awards [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TimeBasedRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Time-based RSU awards.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surety bonds relates to Active Retained Shipyard Contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surety Bonds Relates To Active Retained Shipyard Contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Surety bonds relates to active retained shipyard contracts.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Accounts Payable, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accounts Payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Less: interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Granted (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Well-known Seasoned Issuer</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Well-known Seasoned Issuer</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RestatementAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revision of Prior Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RestatementAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revision of Prior Period [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FerryProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Ferry Projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FerryProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Ferry Projects [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FerryProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Ferry projects.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetLiabilityNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetLiabilityNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract With Customer Asset Liability Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetLiabilityNet_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract with customer asset liability net.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPaymentTerms_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Payment Terms</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPaymentTerms_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">short-term premium finance , Number of installment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Incorporation, State or Country Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Incorporation, State or Country Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity Components</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity Components [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardTransactionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shipyard Transactions [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardTransactionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Shipyard transactions.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardTransactionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Shipyard Transactions</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardTransactionsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Shipyard Transactions</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Material assets of discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Discontinued Operation Amounts Of Material Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Discontinued operation amounts of material assets.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">DSS Acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Purchase price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Businesses, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Contract assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Contract with Customer, Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vested (USD per share)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_LocalPhoneNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Local Phone Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_LocalPhoneNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Local Phone Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BuildingImprovementsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Improvements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BuildingImprovementsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Building Improvements [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property, Plant and Equipment [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Federal</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Current Federal Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Goodwill, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Goodwill, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Goodwill, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from the sale of assets held for sale net of transaction and other costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds From Sale Of Assets Held For Sale Net Of Transaction And Other Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Proceeds from the sale of assets held for sale net of transaction and other costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCashCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCashCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Cash, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Cash Flows [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NetOfEstimatedTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net of estimated transaction and other costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NetOfEstimatedTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Of Estimated Transaction And Other Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NetOfEstimatedTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Net of estimated transaction and other costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SeventyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Seventy-Vehicle Ferry</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SeventyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Seventy Vehicle Ferry [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SeventyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Seventy vehicle ferry.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Tax Authority</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Authority [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounting Policies [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TimeAndMaterialsAndCostReimbursableMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Time And Materials And Cost Reimbursable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TimeAndMaterialsAndCostReimbursableMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Time And Materials And Cost Reimbursable [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TimeAndMaterialsAndCostReimbursableMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Time and materials and cost reimbursable.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingInformationLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Segment Reporting Information [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingInformationLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting Information [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Gross profit (loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gross profit (loss) from continuing operations, as adjusted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gross Profit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Gross profit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk Benchmark</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk Benchmark [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentAnnualReport_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Annual Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentAnnualReport_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Annual Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Forty-Vehicle Ferry</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Forty Vehicle Ferry [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Forty vehicle ferry.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest (expense) income, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Income (Expense), Nonoperating, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Effective rate on Note</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stated interest rate (percentage)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Interest Rate, Stated Percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cumulative Effect, Period of Adoption [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Recognition of compensation cost, weighted average period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-Lived Tangible Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Lived Tangible Asset [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effective Income Tax Rate Reconciliation, Percent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Percent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BalanceSheetDateClassifiedAsCurrentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Balance Sheet Date Classified as Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BalanceSheetDateClassifiedAsCurrentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Balance Sheet Date Classified As Current [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_BalanceSheetDateClassifiedAsCurrentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Balance sheet date classified as current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Share Based Compensation Arrangements By Share Based Payment Award [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MaximumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maximum</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MaximumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Maximum [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract with Customer, Basis of Pricing</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Basis of Pricing [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ConsolidationItemsDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Consolidation Items</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ConsolidationItemsDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Consolidation Items [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Related Party Transaction</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Related Party Transaction [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentExpenditureAdditionToLongLivedAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Capital expenditures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentExpenditureAdditionToLongLivedAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment, Expenditure, Addition to Long-Lived Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxContingencyLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Tax Contingency [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxContingencyLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Contingency [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating cash flows from discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Provided by (Used in) Operating Activities, Discontinued Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsGrossAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred tax assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsGrossAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Gross [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net increase (decrease) in cash, cash equivalents and restricted cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InsuredEventGainLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gain on insurance recoveries</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InsuredEventGainLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Insured Event, Gain (Loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from Shipyard Transaction</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Proceeds from Divestiture of Businesses, Net of Cash Divested, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Divestiture of Businesses, Net of Cash Divested</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFinStmtErrorCorrectionFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Financial Statement Error Correction [Flag]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingSegmentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingSegmentsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Segments [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">OPERATING SEGMENTS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash flows from financing activities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Financing Activities, Continuing Operations [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CityAreaCode_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">City Area Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CityAreaCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">City Area Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">State</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred State and Local Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Inventory, Net, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventory</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ConsolidationItemsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Consolidation Items</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ConsolidationItemsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Consolidation Items [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Vesting of restricted stock (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Adjustment To Additional Paid In Capital Income Tax Effect From Share Based Compensation Net In Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Adjustment to additional paid in capital, income tax effect from share-based compensation, net, in shares.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Adjustments to Previously Issued Quarterly Financial Statements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Quarterly Financial Information [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LetterOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Letter of Credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LetterOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Letter of Credit [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_NameOfMajorCustomerDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_NameOfMajorCustomerDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Accumulated depreciation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">General and Administrative Expense, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">General and administrative expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">General and Administrative Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PerformanceBasedRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance-based RSU Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PerformanceBasedRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Performance Based R S U Awards [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PerformanceBasedRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Performance-based RSU awards.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Weighted Average Number of Shares Outstanding, Basic, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted average shares basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Additional loss related to additional transaction and other costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Additional Loss Related To Additional Transaction And Other Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Additional loss related to additional transaction and other costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainLossOnInsuranceRecovery_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gain on insurance recovery</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainLossOnInsuranceRecovery_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gain Loss On Insurance Recovery</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GainLossOnInsuranceRecovery_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Gain loss on insurance recovery.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Operating loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Recast for discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group, Including Discontinued Operation, Operating Income (Loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible assets amortization expense, 2024</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Amortization Expense, Next Rolling 12 Months</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Gain (Loss) on Extinguishment of Debt, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Gain on extinguishment of debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gain on extinguishment of debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gain (Loss) on Extinguishment of Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract with customer, asset, revenue recognized in excess of amounts billed, current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract With Customer Asset Revenue Recognized In Excess Of Amounts Billed Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract with customer, asset, revenue recognized in excess of amounts billed, current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statement [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Contract with Customer, Liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Fiscal Period Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Fiscal Period Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total lease payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisclosureOfSignificantCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedules of Concentration of Risk, by Risk Factor</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisclosureOfSignificantCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disclosure Of Significant Customers Table [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisclosureOfSignificantCustomersTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Disclosure of Significant Customers.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShortTermDebtRemainingPrincipalBalance_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Remaining principal balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShortTermDebtRemainingPrincipalBalance_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Short Term Debt Remaining Principal Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShortTermDebtRemainingPrincipalBalance_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Short term debt remaining principal balance.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashSettledRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash Settled RSU Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashSettledRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Settled R S U Awards [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashSettledRSUAwardsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Cash settled RSU awards.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2025</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statement [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible assets amortization expense, 2026</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Amortization Expense, Rolling Year Three</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible assets amortization expense, 2025</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Amortization Expense, Rolling Year Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FixedPriceContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fixed-price and unit-rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FixedPriceContractMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fixed-Price Contract [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShortTermPremiumFinanceArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Short-term Premium Finance Arrangement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShortTermPremiumFinanceArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Short Term Premium Finance Arrangement [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShortTermPremiumFinanceArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Short-term premium finance arrangement.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Investing cash flows from discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Provided by (Used in) Investing Activities, Discontinued Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RevenueVariableConsiderationContractPriceReduction_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Reduction of estimated contract price for liquidated damages, amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RevenueVariableConsiderationContractPriceReduction_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue Variable Consideration Contract Price Reduction</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RevenueVariableConsiderationContractPriceReduction_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Revenue variable consideration contract price reduction.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MachineryAndEquipmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Machinery and equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_MachineryAndEquipmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Machinery and Equipment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Recast for discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Recast for discontinued operations (2)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group, Including Discontinued Operation, Gross Profit (Loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Gross profit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LettersOfCreditOutstandingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total outstanding letters of credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LettersOfCreditOutstandingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Letters of Credit Outstanding, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Components of Deferred Tax Assets and Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_CumulativeEffectPeriodOfAdoptionDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cumulative Effect, Period of Adoption [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MajorCustomersAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MajorCustomersAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Cash and Cash Equivalents, at Carrying Value, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Cash and Cash Equivalents, at Carrying Value, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Cash and Cash Equivalents, at Carrying Value, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash and cash equivalents</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents, at Carrying Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Repurchases of common stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Repurchases of common stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Repurchased During Period, Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Prepaid Expense, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Prepaid expenses and other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Prepaid Expense, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BuildingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Buildings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BuildingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Building [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Asset, Held-for-Sale, Not Part of Disposal Group [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Common Stock, Shares Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Common Stock, Shares Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income (Loss) from Discontinued Operations, Net of Tax, Attributable to Parent, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Loss from discontinued operations, net of taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Discontinued Operations, Net of Tax, Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountingStandardsUpdate201613Member_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">ASU 2016-13</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountingStandardsUpdate201613Member_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Standards Update 2016-13 [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LongTermContractsOrProgramsDisclosureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long Term Contracts Or Programs Disclosure [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LongTermContractsOrProgramsDisclosureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long Term Contracts Or Programs Disclosure [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LongTermContractsOrProgramsDisclosureTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Long-term Contracts or Programs Disclosure [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Other (income) expense, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Operating Income (Expense), Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other income expense net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-cash litigation charge associated with write-off of net contract asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Non Cash Litigation Expense Associated With Write-off of Net Contract Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Non-cash litigation expense associated with write-off of net contract asset.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Discontinued Operations and Disposal Groups [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CoverAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cover [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of drydocks previously supported for shipyard division operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Drydocks Previously Supported For Shipyard Division Operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of drydocks previously supported for shipyard division operations.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareRepurchaseProgramDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Repurchase Program [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Current Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Document Fiscal Year Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Fiscal Year Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HurricaneIdaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Hurricane Ida</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HurricaneIdaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Hurricane Ida [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_HurricaneIdaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Hurricane Ida.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherOperatingIncomeExpenseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other (income) expense, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherOperatingIncomeExpenseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Operating Income (Expense) [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForLegalSettlements_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Litigation settlement payment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForLegalSettlements_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments for Legal Settlements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LitigationSettlementExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Litigation charge</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LitigationSettlementExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Litigation Settlement, Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LitigationSettlementExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Litigation Settlement, Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Noncurrent assets and liabilities, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Other Noncurrent Assets and Liabilities, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PPPLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">PPP Loan</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PPPLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">P P P Loan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PPPLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">PPP Loan.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedContractCostNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Sub-total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedContractCostNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Capitalized Contract Cost, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxContingencyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Tax Contingency [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxContingencyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Contingency [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FabricationSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fabrication</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FabricationSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fabrication Segment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FabricationSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Fabrication segment.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_FabricationSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Fabrication Division</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-Based Compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted average grant date fair value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Transaction price on closing date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Divestiture of Businesses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_SecurityExchangeName_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Security Exchange Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_SecurityExchangeName_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Security Exchange Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RemainingFortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Remaining forty-vehicle ferry.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RemainingFortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Remaining Forty Vehicle Ferry [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RemainingFortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Remaining Forty-Vehicle Ferry</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance period awards are earned</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Based Payment Award Award Requisite Service Period1</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Cash based payment award award requisite service period.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DomesticCountryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Domestic Tax Authority</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DomesticCountryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Domestic Tax Authority [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">New Accounting Standards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Preferred Stock, Shares Issued, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares issued (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares authorized (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerRelationshipsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer Relationships</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CustomerRelationshipsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer Relationships [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GeneralLiabilityArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">General Liability Arrangement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GeneralLiabilityArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">General Liability Arrangement [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_GeneralLiabilityArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">General liability arrangement.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Property, Plant and Equipment, Gross, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Property, Plant and Equipment, Gross, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Property, Plant and Equipment, Gross, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property, plant and equipment, gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">State</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Current State and Local Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SignificantAccountingPoliciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Significant Accounting Policies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SignificantAccountingPoliciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Significant Accounting Policies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SignificantAccountingPoliciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Significant Accounting Policies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business Acquisition, Acquiree</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Acquiree [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of RSU Activity Excluding Cash Settled RSUs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Emerging Growth Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Emerging Growth Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LCFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">LC Facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LCFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">L C Facility [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LCFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">LC facility.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AmendmentFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amendment Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AmendmentFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amendment Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Value of awards granted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Value, Restricted Stock Award, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TransactionTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Transaction Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TransactionTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Transaction Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract with Customer, Basis of Pricing</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Basis of Pricing [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromPropertyInsurancePolicy_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Recoveries from insurance claims</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromPropertyInsurancePolicy_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds From Property Insurance Policy</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromPropertyInsurancePolicy_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Proceeds from property insurance policy.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TypeOfAdoptionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Standards Update [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of vehicle ferry projects with rework and construction challenges.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Vehicle Ferry Projects With Rework And Construction Challenges</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of vehicle ferry projects with rework and construction challenges.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basis of Presentation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Basis of Accounting, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TowingSalvageAndRescueShipMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Towing Salvage and Rescue Ship</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TowingSalvageAndRescueShipMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Towing Salvage And Rescue Ship [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_TowingSalvageAndRescueShipMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Towing, salvage and rescue ship.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred tax liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Liabilities, Gross [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash Equivalents and Short-term Investments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents, and Short-Term Investments [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total fair value of shares granted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Grants In Period Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share based compensation arrangement by share based payment award equity instruments other than options grants in period fair value.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFileNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity File Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFileNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Securities Act File Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SuretyBondMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surety Bond</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SuretyBondMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surety Bond [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total deferred tax assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total deferred tax assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity, Class of Treasury Stock [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBondsSubjectToDispute_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surety bonds subject to dispute</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBondsSubjectToDispute_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surety Bonds Subject To Dispute</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SuretyBondsSubjectToDispute_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Surety bonds subject to dispute.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-term debt, noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Excluding Current Maturities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Long-Term Debt, Excluding Current Maturities, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Cash, cash equivalents and restricted cash, beginning of period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Cash, cash equivalents and restricted cash, end of period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsDebtInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsDebtInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets Debt Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsDebtInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Deferred tax assets debt interest.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Loss from discontinued operations, net of taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Discontinued Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InsuranceRecoveries_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Insurance Recoveries</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InsuranceRecoveries_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gain on insurance recoveries</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InsuranceRecoveries_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Gain on insurance recoveries</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupClassificationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Disposal Group Classification</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupClassificationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group Classification [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsLeases_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsLeases_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets Leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DeferredTaxAssetsLeases_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Deferred tax assets leases.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Accounts Payable, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Payable, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">RSUs shares at the beginning of period (USD per share)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">RSUs shares at the end of period (USD per share)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Deferred Tax Assets, Valuation Allowance, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Valuation allowance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Valuation allowance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Valuation Allowance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPeriodicPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument, periodic payment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPeriodicPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Periodic Payment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPeriodicPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Debt Instrument, Periodic Payment, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2028</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturity, Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Employee benefits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Employee Benefits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RightOfUseAssetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Right-of-use asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RightOfUseAssetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Right Of Use Asset [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RightOfUseAssetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Right of use asset.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other intangibles, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherIntangibleAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Intangible Assets, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2024</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturity, Year One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AuditorLocation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Auditor Location</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AuditorLocation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Auditor Location</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressAddressLine2_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, Address Line Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressAddressLine2_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, Address Line Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_MpsvLitigationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">MPSV Litigation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_MpsvLitigationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">MPSV Litigation [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_MpsvLitigationMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">MPSV litigation.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Preferred Stock, Value, Issued, Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Preferred Stock, Value, Issued, Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Preferred Stock, Value, Issued, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, no par value, 5,000 shares authorized, no shares issued and outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Value, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntitySmallBusiness_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Small Business</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntitySmallBusiness_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Small Business</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractAssetUnderDisputeNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract asset under dispute, noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractAssetUnderDisputeNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract Asset Under Dispute Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractAssetUnderDisputeNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract asset under dispute noncurrent.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityShellCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Shell Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityShellCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Shell Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfOperatingSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of operating segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfOperatingSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number of Operating Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fees on undrawn borrowings (percentage)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility, Unused Capacity, Commitment Fee Percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business acquisition, transaction costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition, Transaction Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InsuranceSettlementsReceivableNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Insurance Settlements Receivable, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InsuranceSettlementsReceivableNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Insurance receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Impairments and (gain) loss on assets held for sale, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group Including Discontinued Operation Impairments And Gain Loss On Assets Held For Sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Disposal group including discontinued operation impairments and gain loss on assets held for sale.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total unrecognized compensation costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted- Average Grant-Date Fair Value Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockNoParValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, no par value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockNoParValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, No Par Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NoteAgreementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Note Agreement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NoteAgreementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Note Agreement [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NoteAgreementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Note Agreement.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Address, Address Line One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, Address Line One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SalesRevenueNetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Sales Revenue, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SalesRevenueNetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue Benchmark [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Recognized income associated with revisions to allowance for doubtful accounts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Recognized Income Associated With Revisions to Allowance for Doubtful Accounts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Recognized income associated with revisions to allowance for doubtful accounts.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCash_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Restricted Cash, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCash_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedCash_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Cash</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LakeCharlesLouisianaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Lake Charles, Louisiana</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LakeCharlesLouisianaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lake Charles Louisiana [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LakeCharlesLouisianaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Lake Charles, Louisiana [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PPPLoanThresholdRequiringAuditBySBA_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">PPP Loan threshold requiring an audit by the SBA</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PPPLoanThresholdRequiringAuditBySBA_lbl" xlink:role="http://www.xbrl.org/2003/role/label">P P P Loan Threshold Requiring Audit By S B A</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PPPLoanThresholdRequiringAuditBySBA_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">PPP loan threshold requiring audit by SBA.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from the sale of assets net of transaction and other costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Sale of Assets Net of Transaction and Other Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Proceeds from sale of assets net of transaction and other costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Subsequent Event Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event Type [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Offshore Modules, Material Supply and Subsea Structures Projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Offshore Modules Material Supply And Subsea Structures Projects [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Offshore Modules, Material Supply and Subsea Structures Projects.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maturities of short-term investments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Maturities, Prepayments and Calls of Short-Term Investments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible assets amortization expense, 2027</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Amortization Expense, Rolling Year Four</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementLocationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Statement Location</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementLocationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Statement Location [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Shipyard Division</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Shipyard</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shipyard Segment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ShipyardSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Shipyard segment.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2026</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Maturity, Year Three</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Short-term investments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Securities, Held-to-Maturity, Amortized Cost, before Allowance for Credit Loss, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerReserveForLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Reserve for loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerReserveForLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract With Customer Reserve For Loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerReserveForLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract With Customer, Reserve For Loss.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CorporateNonSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Corporate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CorporateNonSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Corporate, Non-Segment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument, frequency of periodic payment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Frequency of Periodic Payment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basic loss from discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Depreciation, Depletion and Amortization, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Depreciation and amortization expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Depreciation and amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Depreciation, Depletion and Amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductOrServiceAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Product and Service</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductOrServiceAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product and Service [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDrydocks_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of drydocks</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDrydocks_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Drydocks</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfDrydocks_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of drydocks.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_Security12bTitle_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Title of 12(b) Security</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_Security12bTitle_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Title of 12(b) Security</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShortTermContractWithCustomerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Short-Term Contract with Customer [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShortTermContractWithCustomerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Short-Term Contract with Customer</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Prepaid expenses, inventory and other current assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase Decrease In Prepaid Expense And Other Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Increase (decrease) in prepaid expense and other assets.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Accumulated amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-based compensation expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Diluted loss from discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) Per Share And Shareholders' Equity [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Income (Loss) Per Share And Shareholders' Equity.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Other Intangible Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Estimated losses incurred to date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Capitalized contract cost estimated profit losses incurred to date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Capitalized contract cost estimated profit losses incurred to date.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Standards Update [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Increase in operating income (loss) due to project charges</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Asset, Cumulative Catch-up Adjustment to Revenue, Change in Estimate of Transaction Price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerDurationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Duration [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Quarterly Financial Information Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of shares of common stock ultimately awarded as percent of target award based on achievement of performance targets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Shares Of Common Stock Ultimately Awarded As Percent Of Target Award Based On Achievement Of Performance Targets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of shares of common stock ultimately awarded as percent of target award based on achievement of performance targets,</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StateAndLocalJurisdictionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">State and Local Jurisdiction</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StateAndLocalJurisdictionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">State and Local Jurisdiction [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillImpairmentLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill impairment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillImpairmentLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill, Impairment Loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of shares of common stock ultimately issued as percent of target award based on achievement of performance targets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Shares Of Common Stock Ultimately issued As Percent Of Target Award Based On Achievement Of Performance Targets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of shares of common stock ultimately issued as percent of target award based on achievement of performance targets.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-Lived Tangible Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Lived Tangible Asset [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LitigationExpenseAssociatedWithRecordingLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Litigation charge associated with recording liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LitigationExpenseAssociatedWithRecordingLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Litigation Expense Associated With Recording Liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LitigationExpenseAssociatedWithRecordingLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Litigation expense associated with recording liability.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SubsequentEventTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Subsequent Event [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">IMPAIRMENTS AND (GAIN) LOSS ON ASSETS HELD FOR SALE</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Impairments And Gain Loss On Assets Held For Sale Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">The entire disclosure related to impairments and (gain) loss on assets held for sale.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Employer discretionary contribution</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Defined Contribution Plan, Employer Discretionary Contribution Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, shares outstanding (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning Balance (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending Balance (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares, Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Forfeited (USD per share)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ClassOfTreasuryStockTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Class of Treasury Stock [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LeaseDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Lease description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LeaseDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lease Description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LeaseDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Lease description.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Concentration Risk Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Concentration Risk Type [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseDiscountRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease, weighted-average discount rate (percentage)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseDiscountRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Discount Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementLocationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Statement Location</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementLocationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Statement Location [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Combination and Asset Acquisition [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LossContingencyUnderPerformanceBondsIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Claims under performance bonds issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LossContingencyUnderPerformanceBondsIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Loss Contingency Under Performance Bonds Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_LossContingencyUnderPerformanceBondsIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Loss contingency under performance bonds issued.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerDurationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Duration [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentType_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Document Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentType_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractReceivableDueOneYearOrLess_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract receivables and retainage, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractReceivableDueOneYearOrLess_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Construction Contractor, Receivable, Excluding Contract Retainage, Year One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net cash used in investing activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Investing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cost of revenue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group, Including Discontinued Operation, Costs of Goods Sold</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupClassificationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Disposal Group Classification</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupClassificationAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group Classification [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Forfeited (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Financing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net cash used in financing activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFilerCategory_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Entity Filer Category</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFilerCategory_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Filer Category</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">R&amp;D and other tax credits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Tax Credit Carryforwards, Research</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Balance Sheet Location</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Balance Sheet Location [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Decrease to other noncurrent assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Other Noncurrent Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Accrued Liabilities, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued expenses and other current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accrued Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShortTermInvestments_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Short-term Investments, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShortTermInvestments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Short-term investments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShortTermInvestments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Short-Term Investments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Property Plant And Equipment [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Charges associated with insurance recoveries of storm</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Charges Associated With Insurance Recoveries Of Storm</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Charges associated with insurance recoveries of storm.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireShortTermInvestments_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Purchases of short-term investments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireShortTermInvestments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Short-Term Investments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible assets, useful life</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Useful Life</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetImpairmentCharges_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Asset Impairment Charges, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetImpairmentCharges_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Asset impairments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetImpairmentCharges_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Asset Impairment Charges</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetImpairmentCharges_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Asset impairment charges</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total shareholders&#8217; equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total shareholders' equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity, Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerDMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Customer D</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerDMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Customer D [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_CustomerDMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Customer D.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfResearchVesselsProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of research vessels projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfResearchVesselsProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Research Vessels Projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfResearchVesselsProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of research vessels projects.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">General and administrative expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disposal Group, Including Discontinued Operation, General and Administrative Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Documents Incorporated by Reference</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Documents Incorporated by Reference [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Revision of Previously Issued Financial Statements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Error Corrections and Prior Period Adjustments [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net loss</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Income (Loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) Per Share And Shareholders' Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Income (Loss) Per Share And Shareholders' Equity.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Intangible assets amortization expense, 2028</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Amortization Expense, Rolling Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Contract with Customer, Asset, after Allowance for Credit Loss, Current, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract with Customer, Asset, after Allowance for Credit Loss, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_JenningsLouisianaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Jennings, Louisiana</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_JenningsLouisianaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Jennings Louisiana [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_JenningsLouisianaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Jennings, Louisiana [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Depreciation and Amortization Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Depreciation, Depletion, and Amortization [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">State income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Increased craft labor costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract With Customer Asset Cumulative Catch Up Adjustment To Revenue Increased Craft Labor Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract with customer asset cumulative catch-up adjustment to revenue increased craft labor costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair Value Measurements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fair Value Measurement, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Financial Position [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Weighted Average Number of Shares Outstanding, Diluted, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Weighted average shares diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Estimate change in working capital for divested shipyard contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Estimate Change In Working Capital For Divested Shipyard Contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Estimate change in working capital for divested shipyard contracts.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Increase (Decrease) in Receivables, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInReceivables_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Contract receivables and retainage, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInReceivables_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Receivables</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Reconciliation of Income Tax</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Impairment of asset held for sale</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Estimated loss related to impairment of long lived assets and transaction costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Impairment of Long-Lived Assets to be Disposed of</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherIncomeExpenseNetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Other income expense, net.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherIncomeExpenseNetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Income Expense Net [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OtherIncomeExpenseNetMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other Income Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income tax (expense) benefit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Federal</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Federal Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DSSAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">DSS Acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DSSAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">D S S Acquisition [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DSSAcquisitionMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">DSS acquisition.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Continuing Operations, Per Basic Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basic loss from continuing operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SecondFortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Second forty vehicle ferry.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SecondFortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Second Forty Vehicle Ferry [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_SecondFortyVehicleFerryMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Second Forty-Vehicle Ferry</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingLossCarryforwardsSubjectToExpire_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating loss carryforwards subject to expire</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingLossCarryforwardsSubjectToExpire_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Loss Carryforwards Subject To Expire</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_OperatingLossCarryforwardsSubjectToExpire_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Operating loss carryforwards subject to expire.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UseOfEstimates_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Use of Estimates</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_UseOfEstimates_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Use of Estimates, Policy [Policy Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">INCOME TAXES</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Prepaid contract costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amount of Deferred Costs Related to Long-Term Contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Statement Balance Sheet And Additional Disclosures By Disposal Groups Including Discontinued Operations [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Computation of Basic and Diluted Income (Loss) Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Disaggregation of Revenue [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disaggregation of Revenue [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Tax Authority</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Authority [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Pre tax loss on estimated carry value of net assets sold</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Pre Tax Loss On Estimated Carry Value Of Net Assets Sold</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Pre tax loss on estimated carry value of net assets sold.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfVehicleFerryProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of vehicle ferry projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfVehicleFerryProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Vehicle Ferry Projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_NumberOfVehicleFerryProjects_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of vehicle ferry projects.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contract with customer, liability, accrued contract losses, current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contract With Customer Liability Accrued Contract Losses Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Contract with customer liability accrued contract losses current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Remaining transaction price receivable from discontinued operation.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Remaining Transaction Price Receivable From Discontinued Operation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Remaining Transaction Price receivable from Shipyard Transaction</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Current Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Preliminary Purchase Price Allocation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Business Acquisitions, by Acquisition [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Material operating results of discontinued operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Discontinued Operation Amounts Of Material Operating Results</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Discontinued operation amounts of material operating results.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Payments to Acquire Property, Plant, and Equipment, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Capital expenditures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Capital expenditures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Property, Plant, and Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedContractCostGross_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Costs incurred to date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedContractCostGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Costs incurred on uncompleted contracts</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CapitalizedContractCostGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Capitalized Contract Cost, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RestatementDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revision of Prior Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RestatementDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revision of Prior Period [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Vested (in shares)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Lease agreement expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business Acquisition</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BusinessAcquisitionAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Business Acquisition [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finite-Lived Intangible Assets by Major Class</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwards_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Operating Loss Carryforwards, Total</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwards_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating loss carryforwards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwards_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Loss Carryforwards</link:label>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ChargesRelatedToDeductiblesTotal" xlink:to="gifi_ChargesRelatedToDeductiblesTotal_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorFirmId" xlink:to="dei_AuditorFirmId_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInterestPayableNet" xlink:to="us-gaap_IncreaseDecreaseInInterestPayableNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="us-gaap_ArrangementsAndNonarrangementTransactionsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligation" xlink:to="us-gaap_RevenueRemainingPerformanceObligation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_OperatingCyclePolicyPolicyTextBlock" xlink:to="gifi_OperatingCyclePolicyPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_TargetAmountPayableWithPerformancePeriod" xlink:to="gifi_TargetAmountPayableWithPerformancePeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CustomerCMember" xlink:to="gifi_CustomerCMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember" xlink:to="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="us-gaap_RestrictedStockUnitsRSUMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy" xlink:to="us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale" xlink:to="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember" xlink:to="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:to="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_IcfrAuditorAttestationFlag" xlink:to="dei_IcfrAuditorAttestationFlag_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels" xlink:to="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" xlink:to="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentAnnualPrincipalPayment" xlink:to="us-gaap_DebtInstrumentAnnualPrincipalPayment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets" xlink:to="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodShares" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock" xlink:to="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDateDescription" xlink:to="us-gaap_DebtInstrumentMaturityDateDescription_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MaturitiesOfLongTermDebtAbstract" xlink:to="us-gaap_MaturitiesOfLongTermDebtAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock" xlink:to="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate" xlink:to="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock" xlink:to="us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="srt_LitigationCaseTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsOther" xlink:to="us-gaap_DeferredTaxAssetsOther_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TransactionDomain" xlink:to="us-gaap_TransactionDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_HurricaneLauraMember" xlink:to="gifi_HurricaneLauraMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAmortizationAndAccretionNet" xlink:to="us-gaap_DepreciationAmortizationAndAccretionNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:to="us-gaap_UnusualRiskOrUncertaintyNatureDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnsecuredDebt" xlink:to="us-gaap_UnsecuredDebt_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_BalanceSheetDateClassifiedAsNoncurrentMember" xlink:to="gifi_BalanceSheetDateClassifiedAsNoncurrentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CapitalExpendituresExcludedFromAccountsPayable" xlink:to="gifi_CapitalExpendituresExcludedFromAccountsPayable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventMember" xlink:to="us-gaap_SubsequentEventMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember" xlink:to="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentIssuedPrincipal" xlink:to="us-gaap_DebtInstrumentIssuedPrincipal_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock" xlink:to="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DateOfLandfallOccurred" xlink:to="gifi_DateOfLandfallOccurred_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDate" xlink:to="us-gaap_DebtInstrumentMaturityDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ChargesRelatedToDamageDueToLandfall" xlink:to="gifi_ChargesRelatedToDamageDueToLandfall_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" xlink:to="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ProjectsPercentComplete" xlink:to="gifi_ProjectsPercentComplete_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfDivestedShipyardContracts" xlink:to="gifi_NumberOfDivestedShipyardContracts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForDoubtfulAccounts" xlink:to="us-gaap_ProvisionForDoubtfulAccounts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfArrangementAxis" xlink:to="us-gaap_TypeOfArrangementAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_OtherIncomeExpenseNetPolicyTextBlock" xlink:to="gifi_OtherIncomeExpenseNetPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherIntangibleAssetsMember" xlink:to="us-gaap_OtherIntangibleAssetsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedCashNoncurrent" xlink:to="us-gaap_RestrictedCashNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome" xlink:to="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="gifi_SignificantAccountingPoliciesTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConstructionInProgressMember" xlink:to="us-gaap_ConstructionInProgressMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PaymentsOnInsuranceFinanceArrangement" xlink:to="gifi_PaymentsOnInsuranceFinanceArrangement_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseTermOfContract" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_TransactionAndOtherCosts" xlink:to="gifi_TransactionAndOtherCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentContinuingOperationsMember" xlink:to="us-gaap_SegmentContinuingOperationsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NatureOfOperationsPolicyTextBlock" xlink:to="gifi_NatureOfOperationsPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts" xlink:to="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SuretyContractsOfInsuranceCoveragesTerminated" xlink:to="gifi_SuretyContractsOfInsuranceCoveragesTerminated_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_EstimatedCostOfConsoleReplacement" xlink:to="gifi_EstimatedCostOfConsoleReplacement_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities" xlink:to="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets1" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_AssetsHeldForSalePolicyTextBlock" xlink:to="gifi_AssetsHeldForSalePolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentDecreaseForgiveness" xlink:to="us-gaap_DebtInstrumentDecreaseForgiveness_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_StatementBusinessSegmentsAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LandMember" xlink:to="us-gaap_LandMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" xlink:to="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubleaseIncome" xlink:to="us-gaap_SubleaseIncome_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:to="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan" xlink:to="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TransportationEquipmentMember" xlink:to="us-gaap_TransportationEquipmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:to="us-gaap_StockRepurchaseProgramAuthorizedAmount1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense" xlink:to="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfCorporateNonOperatingSegments" xlink:to="gifi_NumberOfCorporateNonOperatingSegments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings" xlink:to="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_BollingerMember" xlink:to="gifi_BollingerMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" xlink:to="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DebtInstrumentPaymentsOfLoan" xlink:to="gifi_DebtInstrumentPaymentsOfLoan_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ImpactOfHurricaneIdaDescription" xlink:to="gifi_ImpactOfHurricaneIdaDescription_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:to="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PrecontractCostPolicyTextBlock" xlink:to="gifi_PrecontractCostPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorName" xlink:to="dei_AuditorName_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentOperatingActivitiesDomain" xlink:to="us-gaap_SegmentOperatingActivitiesDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:to="us-gaap_StatementOperatingActivitiesSegmentAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CapitalizedContractCostBillingsToDate" xlink:to="gifi_CapitalizedContractCostBillingsToDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SuretyContractsOfInsuranceCoverages" xlink:to="gifi_SuretyContractsOfInsuranceCoverages_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeLeasesPolicyTextBlock" xlink:to="us-gaap_LesseeLeasesPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:to="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:to="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DeferredTaxLiabilitiesDepreciation" xlink:to="gifi_DeferredTaxLiabilitiesDepreciation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ChargesAssociatedWithDamageCausedByHurricane" xlink:to="gifi_ChargesAssociatedWithDamageCausedByHurricane_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFaceAmount" xlink:to="us-gaap_DebtInstrumentFaceAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_OtherBasisOfPricingMember" xlink:to="gifi_OtherBasisOfPricingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CustomerBMember" xlink:to="gifi_CustomerBMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntersegmentEliminationMember" xlink:to="us-gaap_IntersegmentEliminationMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfMachineryAndEquipment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_GainOnInterruptionsInsuranceRecovery" xlink:to="gifi_GainOnInterruptionsInsuranceRecovery_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CustomerAMember" xlink:to="gifi_CustomerAMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateTerms" xlink:to="us-gaap_DebtInstrumentInterestRateTerms_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SuretyBonds" xlink:to="gifi_SuretyBonds_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermContractWithCustomerMember" xlink:to="us-gaap_LongTermContractWithCustomerMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingenciesByNatureOfContingencyAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_LossContingenciesTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ShareRepurchaseProgramMember" xlink:to="gifi_ShareRepurchaseProgramMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDateRangeStart1" xlink:to="us-gaap_DebtInstrumentMaturityDateRangeStart1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentDomain" xlink:to="us-gaap_SegmentDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision" xlink:to="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchaseProgramExpirationDate" xlink:to="us-gaap_StockRepurchaseProgramExpirationDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:to="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:to="us-gaap_BusinessAcquisitionProFormaInformationTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfMultiPurposeServiceVesselsProjects" xlink:to="gifi_NumberOfMultiPurposeServiceVesselsProjects_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ChargesForDamage" xlink:to="gifi_ChargesForDamage_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset" xlink:to="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:to="us-gaap_BusinessCombinationAcquisitionRelatedCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PercentageOfProvisionRequiredFromProceedsReceived" xlink:to="gifi_PercentageOfProvisionRequiredFromProceedsReceived_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PerformanceSharesMember" xlink:to="us-gaap_PerformanceSharesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_GainOnSettlementOfContractDispute" xlink:to="gifi_GainOnSettlementOfContractDispute_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DeferredTransactionPrice" xlink:to="gifi_DeferredTransactionPrice_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LossContingenciesLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DeferredTaxAssetsLiabilitiesGross" xlink:to="gifi_DeferredTaxAssetsLiabilitiesGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PromissoryNoteMember" xlink:to="gifi_PromissoryNoteMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperations" xlink:to="us-gaap_IncomeLossFromContinuingOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ServicesSegmentMember" xlink:to="gifi_ServicesSegmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_HoumaFacilitiesMember" xlink:to="gifi_HoumaFacilitiesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:to="us-gaap_UnusualRiskOrUncertaintyByNatureAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareRepurchaseProgramAxis" xlink:to="us-gaap_ShareRepurchaseProgramAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDateRangeEnd1" xlink:to="us-gaap_DebtInstrumentMaturityDateRangeEnd1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductsAndServicesDomain" xlink:to="srt_ProductsAndServicesDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLossCarryforwardsLimitationsOnUse" xlink:to="us-gaap_OperatingLossCarryforwardsLimitationsOnUse_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedCustomerRelationshipsGross" xlink:to="us-gaap_FiniteLivedCustomerRelationshipsGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_AllocatedShareBasedCompensationExpenseReversed" xlink:to="gifi_AllocatedShareBasedCompensationExpenseReversed_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_FabricationAndServicesSegmentMember" xlink:to="gifi_FabricationAndServicesSegmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NetReceivableAmountPurportedLiquidatedDamages" xlink:to="gifi_NetReceivableAmountPurportedLiquidatedDamages_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_LongTermContractsOrProgramsDisclosureLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionDomain" xlink:to="us-gaap_RelatedPartyTransactionDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingencyNatureDomain" xlink:to="us-gaap_LossContingencyNatureDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:to="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent" xlink:to="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockNoParValue" xlink:to="us-gaap_PreferredStockNoParValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CashBasedPerformanceAwardsMember" xlink:to="gifi_CashBasedPerformanceAwardsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ShipyardAssetsMember" xlink:to="gifi_ShipyardAssetsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_TimeBasedRSUAwardsMember" xlink:to="gifi_TimeBasedRSUAwardsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts" xlink:to="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_CreditFacilityDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_EquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_FerryProjectsMember" xlink:to="gifi_FerryProjectsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ContractWithCustomerAssetLiabilityNet" xlink:to="gifi_ContractWithCustomerAssetLiabilityNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentPaymentTerms" xlink:to="us-gaap_DebtInstrumentPaymentTerms_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ShipyardTransactionsMember" xlink:to="gifi_ShipyardTransactionsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DiscontinuedOperationAmountsOfMaterialAssets" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesGross" xlink:to="us-gaap_PaymentsToAcquireBusinessesGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingImprovementsMember" xlink:to="us-gaap_BuildingImprovementsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" xlink:to="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedCashCurrent" xlink:to="us-gaap_RestrictedCashCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NetOfEstimatedTransactionAndOtherCosts" xlink:to="gifi_NetOfEstimatedTransactionAndOtherCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SeventyVehicleFerryMember" xlink:to="gifi_SeventyVehicleFerryMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxAuthorityDomain" xlink:to="us-gaap_IncomeTaxAuthorityDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_TimeAndMaterialsAndCostReimbursableMember" xlink:to="gifi_TimeAndMaterialsAndCostReimbursableMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_SegmentReportingInformationLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_FortyVehicleFerryMember" xlink:to="gifi_FortyVehicleFerryMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_BalanceSheetDateClassifiedAsCurrentMember" xlink:to="gifi_BalanceSheetDateClassifiedAsCurrentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ConsolidationItemsDomain" xlink:to="srt_ConsolidationItemsDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionAxis" xlink:to="us-gaap_RelatedPartyTransactionAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:to="us-gaap_SegmentExpenditureAdditionToLongLivedAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_IncomeTaxContingencyLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:to="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsGrossAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InsuredEventGainLoss" xlink:to="us-gaap_InsuredEventGainLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFinStmtErrorCorrectionFlag" xlink:to="dei_DocumentFinStmtErrorCorrectionFlag_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingSegmentsMember" xlink:to="us-gaap_OperatingSegmentsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" xlink:to="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LetterOfCreditMember" xlink:to="us-gaap_LetterOfCreditMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="srt_NameOfMajorCustomerDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PerformanceBasedRSUAwardsMember" xlink:to="gifi_PerformanceBasedRSUAwardsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts" xlink:to="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_GainLossOnInsuranceRecovery" xlink:to="gifi_GainLossOnInsuranceRecovery_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" xlink:to="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DisclosureOfSignificantCustomersTableTextBlock" xlink:to="gifi_DisclosureOfSignificantCustomersTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ShortTermDebtRemainingPrincipalBalance" xlink:to="gifi_ShortTermDebtRemainingPrincipalBalance_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CashSettledRSUAwardsMember" xlink:to="gifi_CashSettledRSUAwardsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FixedPriceContractMember" xlink:to="us-gaap_FixedPriceContractMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ShortTermPremiumFinanceArrangementMember" xlink:to="gifi_ShortTermPremiumFinanceArrangementMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:to="us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RevenueVariableConsiderationContractPriceReduction" xlink:to="gifi_RevenueVariableConsiderationContractPriceReduction_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_SubsequentEventLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LettersOfCreditOutstandingAmount" xlink:to="us-gaap_LettersOfCreditOutstandingAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:to="srt_CumulativeEffectPeriodOfAdoptionDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingMember" xlink:to="us-gaap_BuildingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract" xlink:to="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingStandardsUpdate201613Member" xlink:to="us-gaap_AccountingStandardsUpdate201613Member_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="gifi_LongTermContractsOrProgramsDisclosureTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherOperatingIncomeExpenseNet" xlink:to="us-gaap_OtherOperatingIncomeExpenseNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" xlink:to="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations" xlink:to="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareRepurchaseProgramDomain" xlink:to="us-gaap_ShareRepurchaseProgramDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_HurricaneIdaMember" xlink:to="gifi_HurricaneIdaMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherOperatingIncomeExpenseMember" xlink:to="us-gaap_OtherOperatingIncomeExpenseMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForLegalSettlements" xlink:to="us-gaap_PaymentsForLegalSettlements_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LitigationSettlementExpense" xlink:to="us-gaap_LitigationSettlementExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PPPLoanMember" xlink:to="gifi_PPPLoanMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalizedContractCostNet" xlink:to="us-gaap_CapitalizedContractCostNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxContingencyTable" xlink:to="us-gaap_IncomeTaxContingencyTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_FabricationSegmentMember" xlink:to="gifi_FabricationSegmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinesses_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RemainingFortyVehicleFerryMember" xlink:to="gifi_RemainingFortyVehicleFerryMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1" xlink:to="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DomesticCountryMember" xlink:to="us-gaap_DomesticCountryMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerRelationshipsMember" xlink:to="us-gaap_CustomerRelationshipsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_GeneralLiabilityArrangementMember" xlink:to="gifi_GeneralLiabilityArrangementMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_SignificantAccountingPoliciesLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_LCFacilityMember" xlink:to="gifi_LCFacilityMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:to="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TransactionTypeAxis" xlink:to="us-gaap_TransactionTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ProceedsFromPropertyInsurancePolicy" xlink:to="gifi_ProceedsFromPropertyInsurancePolicy_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_TypeOfAdoptionMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" xlink:to="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_TowingSalvageAndRescueShipMember" xlink:to="gifi_TowingSalvageAndRescueShipMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock" xlink:to="us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue" xlink:to="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SuretyBondMember" xlink:to="us-gaap_SuretyBondMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SuretyBondsSubjectToDispute" xlink:to="gifi_SuretyBondsSubjectToDispute_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DeferredTaxAssetsDebtInterest" xlink:to="gifi_DeferredTaxAssetsDebtInterest_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InsuranceRecoveries" xlink:to="us-gaap_InsuranceRecoveries_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_DisposalGroupClassificationDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DeferredTaxAssetsLeases" xlink:to="gifi_DeferredTaxAssetsLeases_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentPeriodicPayment" xlink:to="us-gaap_DebtInstrumentPeriodicPayment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RightOfUseAssetMember" xlink:to="gifi_RightOfUseAssetMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherIntangibleAssetsNet" xlink:to="us-gaap_OtherIntangibleAssetsNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorLocation" xlink:to="dei_AuditorLocation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_MpsvLitigationMember" xlink:to="gifi_MpsvLitigationMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ContractAssetUnderDisputeNoncurrent" xlink:to="gifi_ContractAssetUnderDisputeNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfOperatingSegments" xlink:to="us-gaap_NumberOfOperatingSegments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:to="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:to="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:to="us-gaap_InsuranceSettlementsReceivableNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale" xlink:to="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockNoParValue" xlink:to="us-gaap_CommonStockNoParValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NoteAgreementMember" xlink:to="gifi_NoteAgreementMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" xlink:to="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedCash" xlink:to="us-gaap_RestrictedCash_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_LakeCharlesLouisianaMember" xlink:to="gifi_LakeCharlesLouisianaMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PPPLoanThresholdRequiringAuditBySBA" xlink:to="gifi_PPPLoanThresholdRequiringAuditBySBA_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" xlink:to="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember" xlink:to="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:to="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ShipyardSegmentMember" xlink:to="gifi_ShipyardSegmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_HeldToMaturitySecuritiesCurrent" xlink:to="us-gaap_HeldToMaturitySecuritiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ContractWithCustomerReserveForLoss" xlink:to="gifi_ContractWithCustomerReserveForLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CorporateNonSegmentMember" xlink:to="us-gaap_CorporateNonSegmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:to="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfDrydocks" xlink:to="gifi_NumberOfDrydocks_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermContractWithCustomerMember" xlink:to="us-gaap_ShortTermContractWithCustomerMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" xlink:to="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock" xlink:to="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate" xlink:to="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" xlink:to="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerDurationDomain" xlink:to="us-gaap_ContractWithCustomerDurationDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="us-gaap_QuarterlyFinancialInformationDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" xlink:to="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StateAndLocalJurisdictionMember" xlink:to="us-gaap_StateAndLocalJurisdictionMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillImpairmentLoss" xlink:to="us-gaap_GoodwillImpairmentLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" xlink:to="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_LitigationExpenseAssociatedWithRecordingLiability" xlink:to="gifi_LitigationExpenseAssociatedWithRecordingLiability_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock" xlink:to="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:to="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_ClassOfTreasuryStockTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_LeaseDescription" xlink:to="gifi_LeaseDescription_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseDiscountRate" xlink:to="us-gaap_LesseeOperatingLeaseDiscountRate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_IncomeStatementLocationDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_LossContingencyUnderPerformanceBondsIssued" xlink:to="gifi_LossContingencyUnderPerformanceBondsIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerDurationAxis" xlink:to="us-gaap_ContractWithCustomerDurationAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractReceivableDueOneYearOrLess" xlink:to="us-gaap_ContractReceivableDueOneYearOrLess_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_BalanceSheetLocationDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermInvestments" xlink:to="us-gaap_ShortTermInvestments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm" xlink:to="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireShortTermInvestments" xlink:to="us-gaap_PaymentsToAcquireShortTermInvestments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetImpairmentCharges" xlink:to="us-gaap_AssetImpairmentCharges_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_CustomerDMember" xlink:to="gifi_CustomerDMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfResearchVesselsProjects" xlink:to="gifi_NumberOfResearchVesselsProjects_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="dei_DocumentsIncorporatedByReferenceTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:to="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_IncomeLossPerShareAndShareholdersEquityAbstract" xlink:to="gifi_IncomeLossPerShareAndShareholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_JenningsLouisianaMember" xlink:to="gifi_JenningsLouisianaMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" xlink:to="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts" xlink:to="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInReceivables" xlink:to="us-gaap_IncreaseDecreaseInReceivables_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf" xlink:to="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_OtherIncomeExpenseNetMember" xlink:to="gifi_OtherIncomeExpenseNetMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DSSAcquisitionMember" xlink:to="gifi_DSSAcquisitionMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_SecondFortyVehicleFerryMember" xlink:to="gifi_SecondFortyVehicleFerryMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_OperatingLossCarryforwardsSubjectToExpire" xlink:to="gifi_OperatingLossCarryforwardsSubjectToExpire_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts" xlink:to="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold" xlink:to="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_NumberOfVehicleFerryProjects" xlink:to="gifi_NumberOfVehicleFerryProjects_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent" xlink:to="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation" xlink:to="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalizedContractCostGross" xlink:to="us-gaap_CapitalizedContractCostGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RestatementDomain" xlink:to="srt_RestatementDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseExpense" xlink:to="us-gaap_OperatingLeaseExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLossCarryforwards" xlink:to="us-gaap_OperatingLossCarryforwards_lbl"/>
        </link:labelLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFinStmtErrorCorrectionFlag" xlink:label="dei_DocumentFinStmtErrorCorrectionFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorName" xlink:label="dei_AuditorName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentType" order="49.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AmendmentFlag" order="50.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntitySmallBusiness" order="51.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityEmergingGrowthCompany" order="52.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_IcfrAuditorAttestationFlag" order="53.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentPeriodEndDate" order="54.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFiscalYearFocus" order="55.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFiscalPeriodFocus" order="56.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityRegistrantName" order="57.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCentralIndexKey" order="58.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CurrentFiscalYearEndDate" order="59.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFilerCategory" order="60.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityShellCompany" order="61.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCurrentReportingStatus" order="62.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFinStmtErrorCorrectionFlag" order="63.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCommonStockSharesOutstanding" order="64.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityPublicFloat" order="65.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityInteractiveDataCurrent" order="66.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFileNumber" order="67.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityTaxIdentificationNumber" order="68.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressAddressLine1" order="69.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressAddressLine2" order="70.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressCityOrTown" order="71.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressStateOrProvince" order="72.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressPostalZipCode" order="73.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CityAreaCode" order="74.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_LocalPhoneNumber" order="75.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentAnnualReport" order="76.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentTransitionReport" order="77.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityIncorporationStateCountryCode" order="78.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_TradingSymbol" order="79.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_Security12bTitle" order="80.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_SecurityExchangeName" order="81.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityWellKnownSeasonedIssuer" order="82.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityVoluntaryFilers" order="83.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AuditorFirmId" order="84.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AuditorName" order="85.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AuditorLocation" order="86.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentsIncorporatedByReferenceTextBlock" order="87.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashCurrent" xlink:label="us-gaap_RestrictedCashCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashNoncurrent" xlink:label="us-gaap_RestrictedCashNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HeldToMaturitySecuritiesCurrent" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractReceivableDueOneYearOrLess" xlink:label="us-gaap_ContractReceivableDueOneYearOrLess"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsNet" xlink:label="us-gaap_OtherIntangibleAssetsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsCurrentAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AssetsAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_RestrictedCashCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_RestrictedCashNoncurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LongTermDebtNoncurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_HeldToMaturitySecuritiesCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapital" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_ContractReceivableDueOneYearOrLess" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_Goodwill" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_Liabilities" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_OtherIntangibleAssetsNet" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseCurrent" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_Assets" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockNoParValue" xlink:label="us-gaap_PreferredStockNoParValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockNoParValue" xlink:label="us-gaap_CommonStockNoParValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockNoParValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesAuthorized" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesIssued" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesOutstanding" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockNoParValue" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesAuthorized" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesIssued" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesOutstanding" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherOperatingIncomeExpenseNet" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_CostOfGoodsAndServicesSold" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_GrossProfit" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_GeneralAndAdministrativeExpense" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherOperatingIncomeExpenseNet" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OperatingIncomeLoss" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperations" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_NetIncomeLoss" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_EarningsPerShareAbstract" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:label="srt_CumulativeEffectPeriodOfAdoptionDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" xlink:label="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" xlink:label="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_6"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding_7"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:to="srt_CumulativeEffectPeriodOfAdoptionDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_NetIncomeLoss" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockholdersEquity_6" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_CommonStockSharesOutstanding_7" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionDomain" xlink:label="us-gaap_TransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardTransactionsMember" xlink:label="gifi_ShipyardTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation" xlink:label="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PaymentsOnInsuranceFinanceArrangement" xlink:label="gifi_PaymentsOnInsuranceFinanceArrangement"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionTypeAxis" xlink:label="us-gaap_TransactionTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan" xlink:label="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" xlink:label="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CapitalExpendituresExcludedFromAccountsPayable" xlink:label="gifi_CapitalExpendituresExcludedFromAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfMachineryAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale" xlink:label="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceRecoveries" xlink:label="us-gaap_InsuranceRecoveries"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromPropertyInsurancePolicy" xlink:label="gifi_ProceedsFromPropertyInsurancePolicy"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireShortTermInvestments" xlink:label="us-gaap_PaymentsToAcquireShortTermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:label="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransactionDomain" xlink:to="gifi_ShipyardTransactionsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInReceivables" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="gifi_PaymentsOnInsuranceFinanceArrangement" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_TransactionTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransactionTypeAxis" xlink:to="us-gaap_TransactionDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AssetImpairmentCharges" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_InterestPaidNet" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProvisionForDoubtfulAccounts" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsToAcquireBusinessesGross" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="gifi_CapitalExpendituresExcludedFromAccountsPayable" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnDispositionOfAssets1" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_ProceedsFromSaleOfMachineryAndEquipment" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_InsuranceRecoveries" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="gifi_ProceedsFromPropertyInsurancePolicy" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsToAcquireShortTermInvestments" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureREVENUECONTRACTASSETSANDLIABILITIESANDOTHERCONTRACTMATTERS" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipment3" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebt" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONS" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureACQUISITION" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIMPAIRMENTSANDGAINLOSSONASSETSHELDFORSALE" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock" xlink:label="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract" xlink:to="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureINCOMETAXES" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRETIREMENTANDLONGTERMINCENTIVEPLANS" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:label="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock" xlink:label="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:to="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCOMMITMENTSANDCONTINGENCIES" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquity1" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncomeLossPerShareAndShareholdersEquityAbstract" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncomeLossPerShareAndShareholdersEquityTextBlock" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_IncomeLossPerShareAndShareholdersEquityAbstract" xlink:to="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOPERATINGSEGMENTS" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureQUARTERLYFINANCIALINFORMATIONUNAUDITED" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEvents1" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NatureOfOperationsPolicyTextBlock" xlink:label="gifi_NatureOfOperationsPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock" xlink:label="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OperatingCyclePolicyPolicyTextBlock" xlink:label="gifi_OperatingCyclePolicyPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock" xlink:label="us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy" xlink:label="us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AssetsHeldForSalePolicyTextBlock" xlink:label="gifi_AssetsHeldForSalePolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PrecontractCostPolicyTextBlock" xlink:label="gifi_PrecontractCostPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OtherIncomeExpenseNetPolicyTextBlock" xlink:label="gifi_OtherIncomeExpenseNetPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="gifi_NatureOfOperationsPolicyTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="gifi_OperatingCyclePolicyPolicyTextBlock" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_UseOfEstimates" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_InventoryPolicyTextBlock" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="gifi_AssetsHeldForSalePolicyTextBlock" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_LesseeLeasesPolicyTextBlock" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="gifi_PrecontractCostPolicyTextBlock" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="gifi_OtherIncomeExpenseNetPolicyTextBlock" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" order="18" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" order="19" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:label="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DisclosureOfSignificantCustomersTableTextBlock" xlink:label="gifi_DisclosureOfSignificantCustomersTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="gifi_DisclosureOfSignificantCustomersTableTextBlock" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONSTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureAcquisitionTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="us-gaap_BusinessAcquisitionProFormaInformationTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="us-gaap_BusinessAcquisitionProFormaInformationTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureImpairmentsAndGainLossOnAssetsHeldForSaleTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock" xlink:label="us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract" xlink:to="us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:label="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:to="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncomeLossPerShareAndShareholdersEquityAbstract" xlink:label="gifi_IncomeLossPerShareAndShareholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_IncomeLossPerShareAndShareholdersEquityAbstract" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock" xlink:label="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureQuarterlyFinancialInformationUnauditedTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:label="us-gaap_UnusualRiskOrUncertaintyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HurricaneLauraMember" xlink:label="gifi_HurricaneLauraMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SignificantAccountingPoliciesTable" xlink:label="gifi_SignificantAccountingPoliciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:label="us-gaap_UnusualRiskOrUncertaintyByNatureAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LCFacilityMember" xlink:label="gifi_LCFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SignificantAccountingPoliciesLineItems" xlink:label="gifi_SignificantAccountingPoliciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DSSAcquisitionMember" xlink:label="gifi_DSSAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate201613Member" xlink:label="us-gaap_AccountingStandardsUpdate201613Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherOperatingIncomeExpenseMember" xlink:label="us-gaap_OtherOperatingIncomeExpenseMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BalanceSheetDateClassifiedAsCurrentMember" xlink:label="gifi_BalanceSheetDateClassifiedAsCurrentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfCorporateNonOperatingSegments" xlink:label="gifi_NumberOfCorporateNonOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BalanceSheetDateClassifiedAsNoncurrentMember" xlink:label="gifi_BalanceSheetDateClassifiedAsNoncurrentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCash" xlink:label="us-gaap_RestrictedCash"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateDescription" xlink:label="us-gaap_DebtInstrumentMaturityDateDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestments" xlink:label="us-gaap_ShortTermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts" xlink:label="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesForDamage" xlink:label="gifi_ChargesForDamage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainOnSettlementOfContractDispute" xlink:label="gifi_GainOnSettlementOfContractDispute"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesRelatedToDamageDueToLandfall" xlink:label="gifi_ChargesRelatedToDamageDueToLandfall"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherOperatingIncomeExpenseNet" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceRecoveries" xlink:label="us-gaap_InsuranceRecoveries"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" xlink:label="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets" xlink:label="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:to="gifi_HurricaneLauraMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="srt_RestatementAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:to="us-gaap_UnusualRiskOrUncertaintyNatureDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gifi_LCFacilityMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="gifi_SignificantAccountingPoliciesTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_NumberOfOperatingSegments" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gifi_DSSAcquisitionMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate201613Member" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_OtherOperatingIncomeExpenseMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gifi_BalanceSheetDateClassifiedAsCurrentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RestatementDomain" xlink:to="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_CreditFacilityAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_NumberOfCorporateNonOperatingSegments" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gifi_BalanceSheetDateClassifiedAsNoncurrentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_BalanceSheetLocationAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="srt_RangeAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_RestrictedCash" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_BusinessAcquisitionAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDateDescription" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_IncomeStatementLocationAxis" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_ShortTermInvestments" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="gifi_SignificantAccountingPoliciesLineItems" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_ChargesForDamage" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_GainOnSettlementOfContractDispute" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_ChargesRelatedToDamageDueToLandfall" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_OtherOperatingIncomeExpenseNet" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_InsuranceRecoveries" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" order="18" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FixedPriceContractMember" xlink:label="us-gaap_FixedPriceContractMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerDurationDomain" xlink:label="us-gaap_ContractWithCustomerDurationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermContractWithCustomerMember" xlink:label="us-gaap_LongTermContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerDurationAxis" xlink:label="us-gaap_ContractWithCustomerDurationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntersegmentEliminationMember" xlink:label="us-gaap_IntersegmentEliminationMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TimeAndMaterialsAndCostReimbursableMember" xlink:label="gifi_TimeAndMaterialsAndCostReimbursableMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermContractWithCustomerMember" xlink:label="us-gaap_ShortTermContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationAndServicesSegmentMember" xlink:label="gifi_FabricationAndServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OtherBasisOfPricingMember" xlink:label="gifi_OtherBasisOfPricingMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ServicesSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_FixedPriceContractMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerDurationDomain" xlink:to="us-gaap_LongTermContractWithCustomerMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerDurationAxis" xlink:to="us-gaap_ContractWithCustomerDurationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_IntersegmentEliminationMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="gifi_TimeAndMaterialsAndCostReimbursableMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerDurationDomain" xlink:to="us-gaap_ShortTermContractWithCustomerMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_ConsolidationItemsAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationAndServicesSegmentMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="gifi_OtherBasisOfPricingMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ContractWithCustomerDurationAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueLineItems" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FixedPriceContractMember" xlink:label="us-gaap_FixedPriceContractMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TimeAndMaterialsAndCostReimbursableMember" xlink:label="gifi_TimeAndMaterialsAndCostReimbursableMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="srt_ConsolidationItemsAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ServicesSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_FixedPriceContractMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="gifi_TimeAndMaterialsAndCostReimbursableMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedContractCostGross" xlink:label="us-gaap_CapitalizedContractCostGross"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate" xlink:label="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="us-gaap_CapitalizedContractCostNet"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CapitalizedContractCostBillingsToDate" xlink:label="gifi_CapitalizedContractCostBillingsToDate"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetLiabilityNet" xlink:label="gifi_ContractWithCustomerAssetLiabilityNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_CapitalizedContractCostGross" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_CapitalizedContractCostNet" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="gifi_CapitalizedContractCostBillingsToDate" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="gifi_ContractWithCustomerAssetLiabilityNet" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FortyVehicleFerryMember" xlink:label="gifi_FortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" xlink:label="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent" xlink:label="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="srt_ProductOrServiceAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_FortyVehicleFerryMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerAMember" xlink:label="gifi_CustomerAMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerBMember" xlink:label="gifi_CustomerBMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerCMember" xlink:label="gifi_CustomerCMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerDMember" xlink:label="gifi_CustomerDMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerAMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerBMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_MajorCustomersAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerCMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueLineItems" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerDMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MpsvLitigationMember" xlink:label="gifi_MpsvLitigationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerCMember" xlink:label="gifi_CustomerCMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerDMember" xlink:label="gifi_CustomerDMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="gifi_MpsvLitigationMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerCMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerDMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_LitigationSettlementExpense" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_RangeAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_LitigationCaseAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_MajorCustomersAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueLineItems" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MpsvLitigationMember" xlink:label="gifi_MpsvLitigationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:label="us-gaap_UnusualRiskOrUncertaintyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HurricaneIdaMember" xlink:label="gifi_HurricaneIdaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:label="us-gaap_UnusualRiskOrUncertaintyByNatureAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember" xlink:label="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LongTermContractsOrProgramsDisclosureTable" xlink:label="gifi_LongTermContractsOrProgramsDisclosureTable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:label="gifi_LongTermContractsOrProgramsDisclosureLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" xlink:label="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate201613Member" xlink:label="us-gaap_AccountingStandardsUpdate201613Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SeventyVehicleFerryMember" xlink:label="gifi_SeventyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FortyVehicleFerryMember" xlink:label="gifi_FortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RemainingFortyVehicleFerryMember" xlink:label="gifi_RemainingFortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RevenueVariableConsiderationContractPriceReduction" xlink:label="gifi_RevenueVariableConsiderationContractPriceReduction"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember" xlink:label="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EstimatedCostOfConsoleReplacement" xlink:label="gifi_EstimatedCostOfConsoleReplacement"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProjectsPercentComplete" xlink:label="gifi_ProjectsPercentComplete"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerReserveForLoss" xlink:label="gifi_ContractWithCustomerReserveForLoss"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" xlink:label="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfVehicleFerryProjects" xlink:label="gifi_NumberOfVehicleFerryProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DateOfLandfallOccurred" xlink:label="gifi_DateOfLandfallOccurred"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ImpactOfHurricaneIdaDescription" xlink:label="gifi_ImpactOfHurricaneIdaDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromInsuranceSettlementOperatingActivities" xlink:label="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainLossOnInsuranceRecovery" xlink:label="gifi_GainLossOnInsuranceRecovery"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainOnInterruptionsInsuranceRecovery" xlink:label="gifi_GainOnInterruptionsInsuranceRecovery"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm" xlink:label="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:label="us-gaap_InsuranceSettlementsReceivableNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings" xlink:label="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesRelatedToDeductiblesTotal" xlink:label="gifi_ChargesRelatedToDeductiblesTotal"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="gifi_MpsvLitigationMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:to="gifi_HurricaneIdaMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:to="us-gaap_UnusualRiskOrUncertaintyNatureDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="gifi_LongTermContractsOrProgramsDisclosureTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="srt_LitigationCaseAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate201613Member" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_SeventyVehicleFerryMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivable" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_FortyVehicleFerryMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_RemainingFortyVehicleFerryMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_RevenueVariableConsiderationContractPriceReduction" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="srt_ProductOrServiceAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_LitigationSettlementExpense" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="us-gaap_SubsequentEventTypeAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_EstimatedCostOfConsoleReplacement" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="srt_RangeAxis" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ProjectsPercentComplete" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="gifi_LongTermContractsOrProgramsDisclosureLineItems" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ContractWithCustomerReserveForLoss" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_NumberOfVehicleFerryProjects" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_DateOfLandfallOccurred" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ImpactOfHurricaneIdaDescription" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_GainLossOnInsuranceRecovery" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_GainOnInterruptionsInsuranceRecovery" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_InsuranceSettlementsReceivableNoncurrent" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings" order="18" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ChargesRelatedToDeductiblesTotal" order="19" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandMember" xlink:label="us-gaap_LandMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransportationEquipmentMember" xlink:label="us-gaap_TransportationEquipmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingImprovementsMember" xlink:label="us-gaap_BuildingImprovementsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressMember" xlink:label="us-gaap_ConstructionInProgressMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RightOfUseAssetMember" xlink:label="gifi_RightOfUseAssetMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LandMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="srt_RangeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_MachineryAndEquipmentMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_FurnitureAndFixturesMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_TransportationEquipmentMember" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingImprovementsMember" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_ConstructionInProgressMember" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gifi_RightOfUseAssetMember" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_JenningsLouisianaMember" xlink:label="gifi_JenningsLouisianaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="us-gaap_OtherIntangibleAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" xlink:label="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:label="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardAssetsMember" xlink:label="gifi_ShipyardAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OtherIncomeExpenseNetMember" xlink:label="gifi_OtherIncomeExpenseNetMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LakeCharlesLouisianaMember" xlink:label="gifi_LakeCharlesLouisianaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAmortizationAndAccretionNet" xlink:label="us-gaap_DepreciationAmortizationAndAccretionNet"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HoumaFacilitiesMember" xlink:label="gifi_HoumaFacilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LeaseDescription" xlink:label="gifi_LeaseDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" xlink:label="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubleaseIncome" xlink:label="us-gaap_SubleaseIncome"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain" xlink:to="gifi_JenningsLouisianaMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_OtherIntangibleAssetsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelationshipsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gifi_ShipyardAssetsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="gifi_OtherIncomeExpenseNetMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="srt_StatementGeographicalAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain" xlink:to="gifi_LakeCharlesLouisianaMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_DepreciationAmortizationAndAccretionNet" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gifi_HoumaFacilitiesMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="gifi_LeaseDescription" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="srt_RangeAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_IncomeStatementLocationAxis" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_SubsequentEventTypeAxis" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseExpense" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeasePayments" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_SubleaseIncome" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_GoodwillImpairmentLoss" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" order="18" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths" order="19" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo" order="20" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree" order="21" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour" order="22" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive" order="23" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_OperatingLeaseLiability" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseDiscountRate" xlink:label="us-gaap_LesseeOperatingLeaseDiscountRate"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_AssetImpairmentCharges" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_LesseeOperatingLeaseDiscountRate" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedCustomerRelationshipsGross" xlink:label="us-gaap_FiniteLivedCustomerRelationshipsGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedCustomerRelationshipsGross" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShortTermPremiumFinanceArrangementMember" xlink:label="gifi_ShortTermPremiumFinanceArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="us-gaap_TypeOfArrangementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain" xlink:label="us-gaap_LossContingencyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FerryProjectsMember" xlink:label="gifi_FerryProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SecondFortyVehicleFerryMember" xlink:label="gifi_SecondFortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PromissoryNoteMember" xlink:label="gifi_PromissoryNoteMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LCFacilityMember" xlink:label="gifi_LCFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NoteAgreementMember" xlink:label="gifi_NoteAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentDecreaseForgiveness" xlink:label="us-gaap_DebtInstrumentDecreaseForgiveness"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LetterOfCreditMember" xlink:label="us-gaap_LetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GeneralLiabilityArrangementMember" xlink:label="gifi_GeneralLiabilityArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PPPLoanMember" xlink:label="gifi_PPPLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember" xlink:label="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="us-gaap_LettersOfCreditOutstandingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnsecuredDebt" xlink:label="us-gaap_UnsecuredDebt"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DebtInstrumentPaymentsOfLoan" xlink:label="gifi_DebtInstrumentPaymentsOfLoan"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PPPLoanThresholdRequiringAuditBySBA" xlink:label="gifi_PPPLoanThresholdRequiringAuditBySBA"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBonds" xlink:label="gifi_SuretyBonds"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBondsSubjectToDispute" xlink:label="gifi_SuretyBondsSubjectToDispute"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts" xlink:label="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoverages" xlink:label="gifi_SuretyContractsOfInsuranceCoverages"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoveragesTerminated" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminated"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoveragesTerminationDate" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForLegalSettlements" xlink:label="us-gaap_PaymentsForLegalSettlements"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentIssuedPrincipal" xlink:label="us-gaap_DebtInstrumentIssuedPrincipal"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="us-gaap_DebtInstrumentInterestRateTerms"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateRangeStart1" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeStart1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateRangeEnd1" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeEnd1"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PercentageOfProvisionRequiredFromProceedsReceived" xlink:label="gifi_PercentageOfProvisionRequiredFromProceedsReceived"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision" xlink:label="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="us-gaap_DebtInstrumentPaymentTerms"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAnnualPrincipalPayment" xlink:label="us-gaap_DebtInstrumentAnnualPrincipalPayment"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShortTermDebtRemainingPrincipalBalance" xlink:label="gifi_ShortTermDebtRemainingPrincipalBalance"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_ShortTermPremiumFinanceArrangementMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TypeOfArrangementAxis" xlink:to="us-gaap_ArrangementsAndNonarrangementTransactionsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_CreditFacilityAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDate" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_LineOfCreditFacilityTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingencyNatureDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FerryProjectsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_SecondFortyVehicleFerryMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingencyNatureDomain" xlink:to="gifi_PromissoryNoteMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gifi_LCFacilityMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_NoteAgreementMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="srt_RangeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentDecreaseForgiveness" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_LetterOfCreditMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_GeneralLiabilityArrangementMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gifi_PPPLoanMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="srt_ProductOrServiceAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LossContingenciesByNatureOfContingencyAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LettersOfCreditOutstandingAmount" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_TypeOfArrangementAxis" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_UnsecuredDebt" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityLineItems" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_DebtInstrumentPaymentsOfLoan" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_PPPLoanThresholdRequiringAuditBySBA" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyBonds" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyBondsSubjectToDispute" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyContractsOfInsuranceCoverages" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyContractsOfInsuranceCoveragesTerminated" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_PaymentsForLegalSettlements" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentIssuedPrincipal" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateTerms" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentPeriodicPayment" order="18" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" order="19" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDateRangeStart1" order="20" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDateRangeEnd1" order="21" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_PercentageOfProvisionRequiredFromProceedsReceived" order="22" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision" order="23" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentFaceAmount" order="24" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentPaymentTerms" order="25" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentAnnualPrincipalPayment" order="26" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_ShortTermDebtRemainingPrincipalBalance" order="27" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NoteAgreementMember" xlink:label="gifi_NoteAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MaturitiesOfLongTermDebtAbstract" xlink:label="us-gaap_MaturitiesOfLongTermDebtAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="us-gaap_TypeOfArrangementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_NoteAgreementMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MaturitiesOfLongTermDebtAbstract" xlink:to="us-gaap_DebtInstrumentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_TypeOfArrangementAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TypeOfArrangementAxis" xlink:to="us-gaap_ArrangementsAndNonarrangementTransactionsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebt" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NoteAgreementMember" xlink:label="gifi_NoteAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MaturitiesOfLongTermDebtAbstract" xlink:label="us-gaap_MaturitiesOfLongTermDebtAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="us-gaap_TypeOfArrangementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInterestPayableNet" xlink:label="us-gaap_IncreaseDecreaseInInterestPayableNet"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_NoteAgreementMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MaturitiesOfLongTermDebtAbstract" xlink:to="us-gaap_TypeOfArrangementAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TypeOfArrangementAxis" xlink:to="us-gaap_ArrangementsAndNonarrangementTransactionsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentFaceAmount" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MaturitiesOfLongTermDebtAbstract" xlink:to="us-gaap_DebtInstrumentLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_IncreaseDecreaseInInterestPayableNet" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="us-gaap_RelatedPartyTransactionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionDomain" xlink:label="us-gaap_TransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardTransactionsMember" xlink:label="gifi_ShipyardTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FortyVehicleFerryMember" xlink:label="gifi_FortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="us-gaap_RelatedPartyTransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BollingerMember" xlink:label="gifi_BollingerMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionTypeAxis" xlink:label="us-gaap_TransactionTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember" xlink:label="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NetOfEstimatedTransactionAndOtherCosts" xlink:label="gifi_NetOfEstimatedTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTransactionPrice" xlink:label="gifi_DeferredTransactionPrice"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts" xlink:label="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfResearchVesselsProjects" xlink:label="gifi_NumberOfResearchVesselsProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDivestedShipyardContracts" xlink:label="gifi_NumberOfDivestedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDrydocks" xlink:label="gifi_NumberOfDrydocks"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations" xlink:label="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfVehicleFerryProjects" xlink:label="gifi_NumberOfVehicleFerryProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfMultiPurposeServiceVesselsProjects" xlink:label="gifi_NumberOfMultiPurposeServiceVesselsProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold" xlink:label="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TransactionAndOtherCosts" xlink:label="gifi_TransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialAssets" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialAssets"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialLiabilities" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_RelatedPartyTransactionAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransactionDomain" xlink:to="gifi_ShipyardTransactionsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_FortyVehicleFerryMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionDomain" xlink:to="gifi_BollingerMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionAxis" xlink:to="us-gaap_RelatedPartyTransactionDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransactionTypeAxis" xlink:to="us-gaap_TransactionDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_TransactionTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NetOfEstimatedTransactionAndOtherCosts" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="srt_ProductOrServiceAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinesses" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_DeferredTransactionPrice" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfResearchVesselsProjects" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfDivestedShipyardContracts" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfDrydocks" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfVehicleFerryProjects" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfMultiPurposeServiceVesselsProjects" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_Liabilities" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_AssetImpairmentCharges" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_TransactionAndOtherCosts" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialAssets" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:label="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:label="us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionDomain" xlink:label="us-gaap_TransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardTransactionsMember" xlink:label="gifi_ShipyardTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TowingSalvageAndRescueShipMember" xlink:label="gifi_TowingSalvageAndRescueShipMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionTypeAxis" xlink:label="us-gaap_TransactionTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts" xlink:label="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="srt_ProductOrServiceAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransactionDomain" xlink:to="gifi_ShipyardTransactionsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_TowingSalvageAndRescueShipMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TransactionTypeAxis" xlink:to="us-gaap_TransactionDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_TransactionTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:label="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" xlink:label="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" xlink:label="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:to="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:to="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:to="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:label="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGrossAbstract" xlink:label="us-gaap_DeferredTaxAssetsGrossAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsLeases" xlink:label="gifi_DeferredTaxAssetsLeases"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesAbstract" xlink:label="us-gaap_DeferredTaxLiabilitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxLiabilitiesDepreciation" xlink:label="gifi_DeferredTaxLiabilitiesDepreciation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts" xlink:label="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsLiabilitiesGross" xlink:label="gifi_DeferredTaxAssetsLiabilitiesGross"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsDebtInterest" xlink:label="gifi_DeferredTaxAssetsDebtInterest"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="us-gaap_DeferredTaxAssetsOther"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="us-gaap_DeferredTaxAssetsGross"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="gifi_DeferredTaxAssetsLeases" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="gifi_DeferredTaxLiabilitiesDepreciation" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_DeferredTaxAssetsGrossAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="gifi_DeferredTaxAssetsLiabilitiesGross" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="gifi_DeferredTaxAssetsDebtInterest" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="us-gaap_DeferredTaxLiabilities" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsOther" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsGross" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DomesticCountryMember" xlink:label="us-gaap_DomesticCountryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="us-gaap_IncomeTaxContingencyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="us-gaap_DeferredTaxAssetsGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="us-gaap_IncomeTaxContingencyTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="us-gaap_StateAndLocalJurisdictionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="us-gaap_OperatingLossCarryforwards"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OperatingLossCarryforwardsSubjectToExpire" xlink:label="gifi_OperatingLossCarryforwardsSubjectToExpire"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLossCarryforwardsLimitationsOnUse" xlink:label="us-gaap_OperatingLossCarryforwardsLimitationsOnUse"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome" xlink:label="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxAuthorityDomain" xlink:to="us-gaap_DomesticCountryMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_DeferredTaxAssetsGross" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyTable" xlink:to="us-gaap_IncomeTaxAuthorityAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxContingencyTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxAuthorityDomain" xlink:to="us-gaap_StateAndLocalJurisdictionMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyTable" xlink:to="us-gaap_IncomeTaxContingencyLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_OperatingLossCarryforwards" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="gifi_OperatingLossCarryforwardsSubjectToExpire" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_OperatingLossCarryforwardsLimitationsOnUse" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:label="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AllocatedShareBasedCompensationExpenseReversed" xlink:label="gifi_AllocatedShareBasedCompensationExpenseReversed"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TimeBasedRSUAwardsMember" xlink:label="gifi_TimeBasedRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PerformanceBasedRSUAwardsMember" xlink:label="gifi_PerformanceBasedRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashSettledRSUAwardsMember" xlink:label="gifi_CashSettledRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue" xlink:label="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashBasedPerformanceAwardsMember" xlink:label="gifi_CashBasedPerformanceAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation_19"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1" xlink:label="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TargetAmountPayableWithPerformancePeriod" xlink:label="gifi_TargetAmountPayableWithPerformancePeriod"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_AllocatedShareBasedCompensationExpenseReversed" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="srt_RangeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gifi_TimeBasedRSUAwardsMember" order="5.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gifi_PerformanceBasedRSUAwardsMember" order="6.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gifi_CashSettledRSUAwardsMember" order="7.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensation" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" order="8.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gifi_CashBasedPerformanceAwardsMember" order="9.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" order="15" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" order="16" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="17" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="18" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensation_19" order="19" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1" order="20" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_TargetAmountPayableWithPerformancePeriod" order="21" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:label="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_4"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_4"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="dei_DocumentFiscalYearFocus" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_4" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_4" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain" xlink:label="us-gaap_LossContingencyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels" xlink:label="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SuretyBondMember" xlink:label="us-gaap_SuretyBondMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset" xlink:label="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" xlink:label="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LitigationExpenseAssociatedWithRecordingLiability" xlink:label="gifi_LitigationExpenseAssociatedWithRecordingLiability"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LossContingencyUnderPerformanceBondsIssued" xlink:label="gifi_LossContingencyUnderPerformanceBondsIssued"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractAssetUnderDisputeNoncurrent" xlink:label="gifi_ContractAssetUnderDisputeNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NetReceivableAmountPurportedLiquidatedDamages" xlink:label="gifi_NetReceivableAmountPurportedLiquidatedDamages"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_LossContingenciesTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingencyNatureDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_LossContingenciesByNatureOfContingencyAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingencyNatureDomain" xlink:to="us-gaap_SuretyBondMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_LossContingenciesLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LitigationSettlementExpense" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_LitigationExpenseAssociatedWithRecordingLiability" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_LossContingencyUnderPerformanceBondsIssued" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_ContractAssetUnderDisputeNoncurrent" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_NetReceivableAmountPurportedLiquidatedDamages" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperations" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_NetIncomeLoss" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="us-gaap_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareRepurchaseProgramMember" xlink:label="gifi_ShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="us-gaap_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramExpirationDate" xlink:label="us-gaap_StockRepurchaseProgramExpirationDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_ClassOfTreasuryStockTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareRepurchaseProgramDomain" xlink:to="gifi_ShareRepurchaseProgramMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchaseProgramAuthorizedAmount1" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_ShareRepurchaseProgramAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchaseProgramExpirationDate" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="srt_RangeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareRepurchaseProgramAxis" xlink:to="us-gaap_ShareRepurchaseProgramDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfCorporateNonOperatingSegments" xlink:label="gifi_NumberOfCorporateNonOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_NumberOfOperatingSegments" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_SegmentReportingInformationLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="gifi_NumberOfCorporateNonOperatingSegments" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingLeaseLiability" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:label="us-gaap_StatementOperatingActivitiesSegmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentOperatingActivitiesDomain" xlink:label="us-gaap_SegmentOperatingActivitiesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentContinuingOperationsMember" xlink:label="us-gaap_SegmentContinuingOperationsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationAndServicesSegmentMember" xlink:label="gifi_FabricationAndServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:label="us-gaap_SegmentExpenditureAdditionToLongLivedAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementOperatingActivitiesSegmentAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentOperatingActivitiesDomain" xlink:to="us-gaap_SegmentContinuingOperationsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:to="us-gaap_SegmentOperatingActivitiesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ServicesSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="srt_ConsolidationItemsAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationAndServicesSegmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_GrossProfit" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_CorporateNonSegmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingIncomeLoss" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_SegmentReportingInformationLineItems" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_DepreciationDepletionAndAmortization" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_SegmentExpenditureAdditionToLongLivedAssets" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_Assets" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MpsvLitigationMember" xlink:label="gifi_MpsvLitigationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationAndServicesSegmentMember" xlink:label="gifi_FabricationAndServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DSSAcquisitionMember" xlink:label="gifi_DSSAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" xlink:label="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuredEventGainLoss" xlink:label="us-gaap_InsuredEventGainLoss"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesAssociatedWithDamageCausedByHurricane" xlink:label="gifi_ChargesAssociatedWithDamageCausedByHurricane"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainOnSettlementOfContractDispute" xlink:label="gifi_GainOnSettlementOfContractDispute"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="gifi_MpsvLitigationMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationAndServicesSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_LitigationSettlementExpense" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_CorporateNonSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gifi_DSSAcquisitionMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="srt_ConsolidationItemsAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_BusinessAcquisitionAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_InsuredEventGainLoss" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="srt_LitigationCaseAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ServicesSegmentMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="gifi_ChargesAssociatedWithDamageCausedByHurricane" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_SegmentReportingInformationLineItems" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_BusinessCombinationAcquisitionRelatedCosts" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_AssetImpairmentCharges" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="gifi_GainOnSettlementOfContractDispute" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" xlink:label="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HoumaFacilitiesMember" xlink:label="gifi_HoumaFacilitiesMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gifi_HoumaFacilitiesMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventLineItems" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:label="srt_CumulativeEffectPeriodOfAdoptionDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:label="srt_CumulativeEffectPeriodOfAdoptionDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember" xlink:label="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" xlink:label="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" xlink:label="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:to="srt_CumulativeEffectPeriodOfAdoptionDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:to="srt_CumulativeEffectPeriodOfAdoptionDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_NetIncomeLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:to="srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionDomain" xlink:label="us-gaap_TransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardTransactionsMember" xlink:label="gifi_ShipyardTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation" xlink:label="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PaymentsOnInsuranceFinanceArrangement" xlink:label="gifi_PaymentsOnInsuranceFinanceArrangement"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionTypeAxis" xlink:label="us-gaap_TransactionTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionDomain" xlink:label="us-gaap_TransactionDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan" xlink:label="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" xlink:label="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CapitalExpendituresExcludedFromAccountsPayable" xlink:label="gifi_CapitalExpendituresExcludedFromAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfMachineryAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale" xlink:label="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceRecoveries" xlink:label="us-gaap_InsuranceRecoveries"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromPropertyInsurancePolicy" xlink:label="gifi_ProceedsFromPropertyInsurancePolicy"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireShortTermInvestments" xlink:label="us-gaap_PaymentsToAcquireShortTermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:label="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransactionDomain" xlink:to="gifi_ShipyardTransactionsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInReceivables" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetIncomeLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="gifi_PaymentsOnInsuranceFinanceArrangement" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_TransactionTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_TransactionTypeAxis" xlink:to="us-gaap_TransactionDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_TransactionTypeAxis" xlink:to="us-gaap_TransactionDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AssetImpairmentCharges" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_InterestPaidNet" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProvisionForDoubtfulAccounts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsToAcquireBusinessesGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="gifi_CapitalExpendituresExcludedFromAccountsPayable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnDispositionOfAssets1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_ProceedsFromSaleOfMachineryAndEquipment" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_InsuranceRecoveries" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="gifi_ProceedsFromPropertyInsurancePolicy" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_PaymentsToAcquireShortTermInvestments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SignificantAccountingPoliciesLineItems" xlink:label="gifi_SignificantAccountingPoliciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SignificantAccountingPoliciesTable" xlink:label="gifi_SignificantAccountingPoliciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:label="us-gaap_UnusualRiskOrUncertaintyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HurricaneLauraMember" xlink:label="gifi_HurricaneLauraMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:label="us-gaap_UnusualRiskOrUncertaintyByNatureAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:label="us-gaap_UnusualRiskOrUncertaintyNatureDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LCFacilityMember" xlink:label="gifi_LCFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DSSAcquisitionMember" xlink:label="gifi_DSSAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate201613Member" xlink:label="us-gaap_AccountingStandardsUpdate201613Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherOperatingIncomeExpenseMember" xlink:label="us-gaap_OtherOperatingIncomeExpenseMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BalanceSheetDateClassifiedAsCurrentMember" xlink:label="gifi_BalanceSheetDateClassifiedAsCurrentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfCorporateNonOperatingSegments" xlink:label="gifi_NumberOfCorporateNonOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BalanceSheetDateClassifiedAsNoncurrentMember" xlink:label="gifi_BalanceSheetDateClassifiedAsNoncurrentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCash" xlink:label="us-gaap_RestrictedCash"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateDescription" xlink:label="us-gaap_DebtInstrumentMaturityDateDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestments" xlink:label="us-gaap_ShortTermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts" xlink:label="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesForDamage" xlink:label="gifi_ChargesForDamage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainOnSettlementOfContractDispute" xlink:label="gifi_GainOnSettlementOfContractDispute"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesRelatedToDamageDueToLandfall" xlink:label="gifi_ChargesRelatedToDamageDueToLandfall"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent" xlink:label="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherOperatingIncomeExpenseNet" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceRecoveries" xlink:label="us-gaap_InsuranceRecoveries"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" xlink:label="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets" xlink:label="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_SignificantAccountingPoliciesTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:to="gifi_HurricaneLauraMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="srt_RestatementAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:to="us-gaap_UnusualRiskOrUncertaintyNatureDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:to="us-gaap_UnusualRiskOrUncertaintyNatureDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gifi_LCFacilityMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_NumberOfOperatingSegments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gifi_DSSAcquisitionMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate201613Member" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_OtherOperatingIncomeExpenseMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gifi_BalanceSheetDateClassifiedAsCurrentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RestatementDomain" xlink:to="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_CreditFacilityAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_NumberOfCorporateNonOperatingSegments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="gifi_BalanceSheetDateClassifiedAsNoncurrentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_BalanceSheetLocationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_RestrictedCash" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_BusinessAcquisitionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDateDescription" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_IncomeStatementLocationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_ShortTermInvestments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_SignificantAccountingPoliciesTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_ChargesForDamage" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_GainOnSettlementOfContractDispute" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="12" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_ChargesRelatedToDamageDueToLandfall" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="13" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="14" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_OtherOperatingIncomeExpenseNet" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="15" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_InsuranceRecoveries" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="16" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="17" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="18" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_SignificantAccountingPoliciesLineItems" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FixedPriceContractMember" xlink:label="us-gaap_FixedPriceContractMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerDurationDomain" xlink:label="us-gaap_ContractWithCustomerDurationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermContractWithCustomerMember" xlink:label="us-gaap_LongTermContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerDurationAxis" xlink:label="us-gaap_ContractWithCustomerDurationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerDurationDomain" xlink:label="us-gaap_ContractWithCustomerDurationDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntersegmentEliminationMember" xlink:label="us-gaap_IntersegmentEliminationMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TimeAndMaterialsAndCostReimbursableMember" xlink:label="gifi_TimeAndMaterialsAndCostReimbursableMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermContractWithCustomerMember" xlink:label="us-gaap_ShortTermContractWithCustomerMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationAndServicesSegmentMember" xlink:label="gifi_FabricationAndServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OtherBasisOfPricingMember" xlink:label="gifi_OtherBasisOfPricingMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ServicesSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_FixedPriceContractMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerDurationDomain" xlink:to="us-gaap_LongTermContractWithCustomerMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ContractWithCustomerDurationAxis" xlink:to="us-gaap_ContractWithCustomerDurationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ContractWithCustomerDurationAxis" xlink:to="us-gaap_ContractWithCustomerDurationDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_IntersegmentEliminationMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="gifi_TimeAndMaterialsAndCostReimbursableMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerDurationDomain" xlink:to="us-gaap_ShortTermContractWithCustomerMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_ConsolidationItemsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationAndServicesSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="gifi_OtherBasisOfPricingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ContractWithCustomerDurationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:label="us-gaap_ContractWithCustomerBasisOfPricingDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FixedPriceContractMember" xlink:label="us-gaap_FixedPriceContractMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TimeAndMaterialsAndCostReimbursableMember" xlink:label="gifi_TimeAndMaterialsAndCostReimbursableMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="srt_ConsolidationItemsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ServicesSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingAxis" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="us-gaap_FixedPriceContractMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_ContractWithCustomerBasisOfPricingAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractWithCustomerBasisOfPricingDomain" xlink:to="gifi_TimeAndMaterialsAndCostReimbursableMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FortyVehicleFerryMember" xlink:label="gifi_FortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" xlink:label="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent" xlink:label="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="srt_ProductOrServiceAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_FortyVehicleFerryMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerAMember" xlink:label="gifi_CustomerAMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerBMember" xlink:label="gifi_CustomerBMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerCMember" xlink:label="gifi_CustomerCMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerDMember" xlink:label="gifi_CustomerDMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerAMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerBMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_MajorCustomersAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerCMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerDMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MpsvLitigationMember" xlink:label="gifi_MpsvLitigationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerCMember" xlink:label="gifi_CustomerCMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CustomerDMember" xlink:label="gifi_CustomerDMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="gifi_MpsvLitigationMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerCMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="gifi_CustomerDMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_LitigationSettlementExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_LitigationCaseAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_MajorCustomersAxis" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:label="gifi_LongTermContractsOrProgramsDisclosureLineItems"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LongTermContractsOrProgramsDisclosureTable" xlink:label="gifi_LongTermContractsOrProgramsDisclosureTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MpsvLitigationMember" xlink:label="gifi_MpsvLitigationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:label="us-gaap_UnusualRiskOrUncertaintyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HurricaneIdaMember" xlink:label="gifi_HurricaneIdaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:label="us-gaap_UnusualRiskOrUncertaintyByNatureAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember" xlink:label="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" xlink:label="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingStandardsUpdate201613Member" xlink:label="us-gaap_AccountingStandardsUpdate201613Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SeventyVehicleFerryMember" xlink:label="gifi_SeventyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FortyVehicleFerryMember" xlink:label="gifi_FortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RemainingFortyVehicleFerryMember" xlink:label="gifi_RemainingFortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RevenueVariableConsiderationContractPriceReduction" xlink:label="gifi_RevenueVariableConsiderationContractPriceReduction"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember" xlink:label="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EstimatedCostOfConsoleReplacement" xlink:label="gifi_EstimatedCostOfConsoleReplacement"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProjectsPercentComplete" xlink:label="gifi_ProjectsPercentComplete"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerReserveForLoss" xlink:label="gifi_ContractWithCustomerReserveForLoss"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" xlink:label="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfVehicleFerryProjects" xlink:label="gifi_NumberOfVehicleFerryProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DateOfLandfallOccurred" xlink:label="gifi_DateOfLandfallOccurred"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ImpactOfHurricaneIdaDescription" xlink:label="gifi_ImpactOfHurricaneIdaDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromInsuranceSettlementOperatingActivities" xlink:label="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainLossOnInsuranceRecovery" xlink:label="gifi_GainLossOnInsuranceRecovery"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainOnInterruptionsInsuranceRecovery" xlink:label="gifi_GainOnInterruptionsInsuranceRecovery"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm" xlink:label="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:label="us-gaap_InsuranceSettlementsReceivableNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings" xlink:label="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesRelatedToDeductiblesTotal" xlink:label="gifi_ChargesRelatedToDeductiblesTotal"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_LongTermContractsOrProgramsDisclosureTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="gifi_MpsvLitigationMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_UnusualRiskOrUncertaintyNatureDomain" xlink:to="gifi_HurricaneIdaMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" xlink:to="us-gaap_UnusualRiskOrUncertaintyNatureDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="srt_LitigationCaseAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate201613Member" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_SeventyVehicleFerryMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_FortyVehicleFerryMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_RemainingFortyVehicleFerryMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_RevenueVariableConsiderationContractPriceReduction" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="srt_ProductOrServiceAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_LitigationSettlementExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="us-gaap_SubsequentEventTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="us-gaap_UnusualRiskOrUncertaintyByNatureAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_EstimatedCostOfConsoleReplacement" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="gifi_LongTermContractsOrProgramsDisclosureTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ProjectsPercentComplete" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ContractWithCustomerReserveForLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_NumberOfVehicleFerryProjects" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_DateOfLandfallOccurred" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="12" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ImpactOfHurricaneIdaDescription" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="13" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_ProceedsFromInsuranceSettlementOperatingActivities" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="14" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_GainLossOnInsuranceRecovery" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="15" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_GainOnInterruptionsInsuranceRecovery" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="16" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="17" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="us-gaap_InsuranceSettlementsReceivableNoncurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="18" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="19" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="gifi_LongTermContractsOrProgramsDisclosureLineItems" xlink:to="gifi_ChargesRelatedToDeductiblesTotal" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandMember" xlink:label="us-gaap_LandMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransportationEquipmentMember" xlink:label="us-gaap_TransportationEquipmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingImprovementsMember" xlink:label="us-gaap_BuildingImprovementsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressMember" xlink:label="us-gaap_ConstructionInProgressMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RightOfUseAssetMember" xlink:label="gifi_RightOfUseAssetMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LandMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_MachineryAndEquipmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_FurnitureAndFixturesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_TransportationEquipmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingImprovementsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_ConstructionInProgressMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gifi_RightOfUseAssetMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_JenningsLouisianaMember" xlink:label="gifi_JenningsLouisianaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="us-gaap_OtherIntangibleAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" xlink:label="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" xlink:label="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardAssetsMember" xlink:label="gifi_ShipyardAssetsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OtherIncomeExpenseNetMember" xlink:label="gifi_OtherIncomeExpenseNetMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LakeCharlesLouisianaMember" xlink:label="gifi_LakeCharlesLouisianaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAmortizationAndAccretionNet" xlink:label="us-gaap_DepreciationAmortizationAndAccretionNet"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HoumaFacilitiesMember" xlink:label="gifi_HoumaFacilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LeaseDescription" xlink:label="gifi_LeaseDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" xlink:label="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubleaseIncome" xlink:label="us-gaap_SubleaseIncome"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="gifi_JenningsLouisianaMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_OtherIntangibleAssetsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelationshipsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gifi_ShipyardAssetsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="gifi_OtherIncomeExpenseNetMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="srt_StatementGeographicalAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="gifi_LakeCharlesLouisianaMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_DepreciationAmortizationAndAccretionNet" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gifi_HoumaFacilitiesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="gifi_LeaseDescription" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_IncomeStatementLocationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_SubsequentEventTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeaseExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_OperatingLeasePayments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="12" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="13" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="14" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_SubleaseIncome" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="15" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="16" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_GoodwillImpairmentLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="17" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="18" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="19" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="20" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="21" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="22" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="23" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedCustomerRelationshipsGross" xlink:label="us-gaap_FiniteLivedCustomerRelationshipsGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedCustomerRelationshipsGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShortTermPremiumFinanceArrangementMember" xlink:label="gifi_ShortTermPremiumFinanceArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="us-gaap_TypeOfArrangementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain" xlink:label="us-gaap_LossContingencyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain" xlink:label="us-gaap_LossContingencyNatureDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FerryProjectsMember" xlink:label="gifi_FerryProjectsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SecondFortyVehicleFerryMember" xlink:label="gifi_SecondFortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PromissoryNoteMember" xlink:label="gifi_PromissoryNoteMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LCFacilityMember" xlink:label="gifi_LCFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NoteAgreementMember" xlink:label="gifi_NoteAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentDecreaseForgiveness" xlink:label="us-gaap_DebtInstrumentDecreaseForgiveness"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LetterOfCreditMember" xlink:label="us-gaap_LetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GeneralLiabilityArrangementMember" xlink:label="gifi_GeneralLiabilityArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PPPLoanMember" xlink:label="gifi_PPPLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember" xlink:label="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="us-gaap_LettersOfCreditOutstandingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnsecuredDebt" xlink:label="us-gaap_UnsecuredDebt"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DebtInstrumentPaymentsOfLoan" xlink:label="gifi_DebtInstrumentPaymentsOfLoan"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PPPLoanThresholdRequiringAuditBySBA" xlink:label="gifi_PPPLoanThresholdRequiringAuditBySBA"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBonds" xlink:label="gifi_SuretyBonds"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBondsSubjectToDispute" xlink:label="gifi_SuretyBondsSubjectToDispute"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts" xlink:label="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoverages" xlink:label="gifi_SuretyContractsOfInsuranceCoverages"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoveragesTerminated" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminated"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_SuretyContractsOfInsuranceCoveragesTerminationDate" xlink:label="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForLegalSettlements" xlink:label="us-gaap_PaymentsForLegalSettlements"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentIssuedPrincipal" xlink:label="us-gaap_DebtInstrumentIssuedPrincipal"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="us-gaap_DebtInstrumentInterestRateTerms"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateRangeStart1" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeStart1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentMaturityDateRangeEnd1" xlink:label="us-gaap_DebtInstrumentMaturityDateRangeEnd1"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PercentageOfProvisionRequiredFromProceedsReceived" xlink:label="gifi_PercentageOfProvisionRequiredFromProceedsReceived"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision" xlink:label="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="us-gaap_DebtInstrumentPaymentTerms"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAnnualPrincipalPayment" xlink:label="us-gaap_DebtInstrumentAnnualPrincipalPayment"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShortTermDebtRemainingPrincipalBalance" xlink:label="gifi_ShortTermDebtRemainingPrincipalBalance"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_ShortTermPremiumFinanceArrangementMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_TypeOfArrangementAxis" xlink:to="us-gaap_ArrangementsAndNonarrangementTransactionsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_TypeOfArrangementAxis" xlink:to="us-gaap_ArrangementsAndNonarrangementTransactionsMember_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_CreditFacilityAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingencyNatureDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingencyNatureDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FerryProjectsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_SecondFortyVehicleFerryMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingencyNatureDomain" xlink:to="gifi_PromissoryNoteMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gifi_LCFacilityMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_NoteAgreementMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentDecreaseForgiveness" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_LetterOfCreditMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_GeneralLiabilityArrangementMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="gifi_PPPLoanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="srt_ProductOrServiceAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LossContingenciesByNatureOfContingencyAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LettersOfCreditOutstandingAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_TypeOfArrangementAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_UnsecuredDebt" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_DebtInstrumentPaymentsOfLoan" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_PPPLoanThresholdRequiringAuditBySBA" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyBonds" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyBondsSubjectToDispute" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="12" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyContractsOfInsuranceCoverages" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="13" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyContractsOfInsuranceCoveragesTerminated" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="14" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="15" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_PaymentsForLegalSettlements" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="16" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentIssuedPrincipal" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="17" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateTerms" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="18" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentPeriodicPayment" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="19" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="20" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDateRangeStart1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="21" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDateRangeEnd1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="22" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_PercentageOfProvisionRequiredFromProceedsReceived" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="23" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="24" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentFaceAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="25" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentPaymentTerms" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="26" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentAnnualPrincipalPayment" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="27" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="gifi_ShortTermDebtRemainingPrincipalBalance" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="us-gaap_DebtInstrumentLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="us-gaap_DebtInstrumentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NoteAgreementMember" xlink:label="gifi_NoteAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="us-gaap_TypeOfArrangementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="gifi_NoteAgreementMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_DebtInstrumentTable" xlink:to="us-gaap_TypeOfArrangementAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_TypeOfArrangementAxis" xlink:to="us-gaap_ArrangementsAndNonarrangementTransactionsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtInstrumentLineItems" xlink:to="us-gaap_LongTermDebt" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="us-gaap_RelatedPartyTransactionAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionDomain" xlink:label="us-gaap_TransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardTransactionsMember" xlink:label="gifi_ShipyardTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FortyVehicleFerryMember" xlink:label="gifi_FortyVehicleFerryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="us-gaap_RelatedPartyTransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_BollingerMember" xlink:label="gifi_BollingerMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="us-gaap_RelatedPartyTransactionDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionTypeAxis" xlink:label="us-gaap_TransactionTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember" xlink:label="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NetOfEstimatedTransactionAndOtherCosts" xlink:label="gifi_NetOfEstimatedTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinesses"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTransactionPrice" xlink:label="gifi_DeferredTransactionPrice"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts" xlink:label="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfResearchVesselsProjects" xlink:label="gifi_NumberOfResearchVesselsProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDivestedShipyardContracts" xlink:label="gifi_NumberOfDivestedShipyardContracts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDrydocks" xlink:label="gifi_NumberOfDrydocks"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations" xlink:label="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfVehicleFerryProjects" xlink:label="gifi_NumberOfVehicleFerryProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfMultiPurposeServiceVesselsProjects" xlink:label="gifi_NumberOfMultiPurposeServiceVesselsProjects"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold" xlink:label="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TransactionAndOtherCosts" xlink:label="gifi_TransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialAssets" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialAssets"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DiscontinuedOperationAmountsOfMaterialLiabilities" xlink:label="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_RelatedPartyTransactionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransactionDomain" xlink:to="gifi_ShipyardTransactionsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_FortyVehicleFerryMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyTransactionDomain" xlink:to="gifi_BollingerMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RelatedPartyTransactionAxis" xlink:to="us-gaap_RelatedPartyTransactionDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RelatedPartyTransactionAxis" xlink:to="us-gaap_RelatedPartyTransactionDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_TransactionTypeAxis" xlink:to="us-gaap_TransactionDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_TransactionTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NetOfEstimatedTransactionAndOtherCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="srt_ProductOrServiceAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinesses" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_DeferredTransactionPrice" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfResearchVesselsProjects" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfDivestedShipyardContracts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfDrydocks" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfVehicleFerryProjects" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_NumberOfMultiPurposeServiceVesselsProjects" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="12" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_Liabilities" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="13" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_AssetImpairmentCharges" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="14" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_TransactionAndOtherCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="15" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="16" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialAssets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="17" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionDomain" xlink:label="us-gaap_TransactionDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardTransactionsMember" xlink:label="gifi_ShipyardTransactionsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TowingSalvageAndRescueShipMember" xlink:label="gifi_TowingSalvageAndRescueShipMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransactionTypeAxis" xlink:label="us-gaap_TransactionTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts" xlink:label="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts" xlink:label="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="srt_ProductOrServiceAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TransactionDomain" xlink:to="gifi_ShipyardTransactionsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="gifi_TowingSalvageAndRescueShipMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_TransactionTypeAxis" xlink:to="us-gaap_TransactionDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_TransactionTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="us-gaap_IncomeTaxContingencyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="us-gaap_IncomeTaxContingencyTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DomesticCountryMember" xlink:label="us-gaap_DomesticCountryMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="us-gaap_DeferredTaxAssetsGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="us-gaap_StateAndLocalJurisdictionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="us-gaap_OperatingLossCarryforwards"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OperatingLossCarryforwardsSubjectToExpire" xlink:label="gifi_OperatingLossCarryforwardsSubjectToExpire"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLossCarryforwardsLimitationsOnUse" xlink:label="us-gaap_OperatingLossCarryforwardsLimitationsOnUse"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome" xlink:label="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_IncomeTaxContingencyTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxAuthorityDomain" xlink:to="us-gaap_DomesticCountryMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_DeferredTaxAssetsGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_IncomeTaxContingencyTable" xlink:to="us-gaap_IncomeTaxAuthorityAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxAuthorityDomain" xlink:to="us-gaap_StateAndLocalJurisdictionMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_OperatingLossCarryforwards" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="gifi_OperatingLossCarryforwardsSubjectToExpire" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_OperatingLossCarryforwardsLimitationsOnUse" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_AllocatedShareBasedCompensationExpenseReversed" xlink:label="gifi_AllocatedShareBasedCompensationExpenseReversed"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TimeBasedRSUAwardsMember" xlink:label="gifi_TimeBasedRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PerformanceBasedRSUAwardsMember" xlink:label="gifi_PerformanceBasedRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashSettledRSUAwardsMember" xlink:label="gifi_CashSettledRSUAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" xlink:label="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashBasedPerformanceAwardsMember" xlink:label="gifi_CashBasedPerformanceAwardsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue" xlink:label="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1" xlink:label="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_TargetAmountPayableWithPerformancePeriod" xlink:label="gifi_TargetAmountPayableWithPerformancePeriod"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_AllocatedShareBasedCompensationExpenseReversed" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_PerformanceSharesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gifi_TimeBasedRSUAwardsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gifi_PerformanceBasedRSUAwardsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gifi_CashSettledRSUAwardsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="gifi_CashBasedPerformanceAwardsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="12" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="13" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="14" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="15" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="16" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="17" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="18" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="20" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="21" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="gifi_TargetAmountPayableWithPerformancePeriod" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="dei_DocumentFiscalYearFocus" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain" xlink:label="us-gaap_LossContingencyNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels" xlink:label="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SuretyBondMember" xlink:label="us-gaap_SuretyBondMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset" xlink:label="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" xlink:label="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LitigationExpenseAssociatedWithRecordingLiability" xlink:label="gifi_LitigationExpenseAssociatedWithRecordingLiability"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_LossContingencyUnderPerformanceBondsIssued" xlink:label="gifi_LossContingencyUnderPerformanceBondsIssued"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractAssetUnderDisputeNoncurrent" xlink:label="gifi_ContractAssetUnderDisputeNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NetReceivableAmountPurportedLiquidatedDamages" xlink:label="gifi_NetReceivableAmountPurportedLiquidatedDamages"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LossContingenciesTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingencyNatureDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_LossContingenciesByNatureOfContingencyAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingencyNatureDomain" xlink:to="us-gaap_SuretyBondMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LitigationSettlementExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_LitigationExpenseAssociatedWithRecordingLiability" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_LossContingencyUnderPerformanceBondsIssued" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_ContractAssetUnderDisputeNoncurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="gifi_NetReceivableAmountPurportedLiquidatedDamages" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramAxis" xlink:label="us-gaap_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="us-gaap_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramDomain" xlink:label="us-gaap_ShareRepurchaseProgramDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShareRepurchaseProgramMember" xlink:label="gifi_ShareRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramExpirationDate" xlink:label="us-gaap_StockRepurchaseProgramExpirationDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_ClassOfTreasuryStockTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ShareRepurchaseProgramAxis" xlink:to="us-gaap_ShareRepurchaseProgramDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ShareRepurchaseProgramAxis" xlink:to="us-gaap_ShareRepurchaseProgramDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareRepurchaseProgramDomain" xlink:to="gifi_ShareRepurchaseProgramMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchaseProgramAuthorizedAmount1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_ShareRepurchaseProgramAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchaseProgramExpirationDate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_NumberOfCorporateNonOperatingSegments" xlink:label="gifi_NumberOfCorporateNonOperatingSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_NumberOfOperatingSegments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="gifi_NumberOfCorporateNonOperatingSegments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingLeaseLiability" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:label="us-gaap_StatementOperatingActivitiesSegmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentOperatingActivitiesDomain" xlink:label="us-gaap_SegmentOperatingActivitiesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentContinuingOperationsMember" xlink:label="us-gaap_SegmentContinuingOperationsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentOperatingActivitiesDomain" xlink:label="us-gaap_SegmentOperatingActivitiesDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationAndServicesSegmentMember" xlink:label="gifi_FabricationAndServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:label="us-gaap_SegmentExpenditureAdditionToLongLivedAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementOperatingActivitiesSegmentAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentOperatingActivitiesDomain" xlink:to="us-gaap_SegmentContinuingOperationsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:to="us-gaap_SegmentOperatingActivitiesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementOperatingActivitiesSegmentAxis" xlink:to="us-gaap_SegmentOperatingActivitiesDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ServicesSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="srt_ConsolidationItemsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationAndServicesSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_GrossProfit" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_CorporateNonSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingIncomeLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_DepreciationDepletionAndAmortization" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_SegmentExpenditureAdditionToLongLivedAssets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_Assets" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_MpsvLitigationMember" xlink:label="gifi_MpsvLitigationMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationAndServicesSegmentMember" xlink:label="gifi_FabricationAndServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DSSAcquisitionMember" xlink:label="gifi_DSSAcquisitionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" xlink:label="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ShipyardSegmentMember" xlink:label="gifi_ShipyardSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuredEventGainLoss" xlink:label="us-gaap_InsuredEventGainLoss"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ServicesSegmentMember" xlink:label="gifi_ServicesSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ChargesAssociatedWithDamageCausedByHurricane" xlink:label="gifi_ChargesAssociatedWithDamageCausedByHurricane"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_GainOnSettlementOfContractDispute" xlink:label="gifi_GainOnSettlementOfContractDispute"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="gifi_MpsvLitigationMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationAndServicesSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_LitigationSettlementExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_CorporateNonSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="gifi_DSSAcquisitionMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="srt_ConsolidationItemsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_BusinessAcquisitionAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ShipyardSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_InsuredEventGainLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="srt_LitigationCaseAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_ServicesSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="gifi_ChargesAssociatedWithDamageCausedByHurricane" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_BusinessCombinationAcquisitionRelatedCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_AssetImpairmentCharges" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="gifi_GainOnSettlementOfContractDispute" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems" xlink:label="us-gaap_SubsequentEventLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable" xlink:label="us-gaap_SubsequentEventTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_FabricationSegmentMember" xlink:label="gifi_FabricationSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" xlink:label="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember" xlink:label="us-gaap_SubsequentEventMember"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_HoumaFacilitiesMember" xlink:label="gifi_HoumaFacilitiesMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="us-gaap_SubsequentEventTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_SubsequentEventTypeAxis" xlink:to="us-gaap_SubsequentEventTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="gifi_FabricationSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventLineItems" xlink:to="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SubsequentEventTypeDomain" xlink:to="us-gaap_SubsequentEventMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="gifi_HoumaFacilitiesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_SubsequentEventTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_SubsequentEventTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" priority="2" use="optional"/>
        </link:definitionLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableCurrent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_PreferredStockValue" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_RestrictedCashCurrent" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquity" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LongTermDebtCurrent" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_RestrictedCashNoncurrent" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LongTermDebtNoncurrent" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_CommonStockValue" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_HeldToMaturitySecuritiesCurrent" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AdditionalPaidInCapital" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_ContractReceivableDueOneYearOrLess" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Goodwill" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OtherIntangibleAssetsNet" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_InventoryNet" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OtherAssetsNoncurrent" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" order="7" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashCurrent" xlink:label="us-gaap_RestrictedCashCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashNoncurrent" xlink:label="us-gaap_RestrictedCashNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HeldToMaturitySecuritiesCurrent" xlink:label="us-gaap_HeldToMaturitySecuritiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractReceivableDueOneYearOrLess" xlink:label="us-gaap_ContractReceivableDueOneYearOrLess"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsNet" xlink:label="us-gaap_OtherIntangibleAssetsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_OperatingIncomeLoss" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GrossProfit" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperations" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperations" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GeneralAndAdministrativeExpense" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperations" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_CostOfGoodsAndServicesSold" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OtherOperatingIncomeExpenseNet" order="3" weight="1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherOperatingIncomeExpenseNet" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetIncomeLoss" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="0" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DepreciationDepletionAndAmortization" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" order="1" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_AssetImpairmentCharges" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireBusinessesGross" order="2" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="gifi_PaymentsOnInsuranceFinanceArrangement" order="2" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ProvisionForDoubtfulAccounts" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromSaleOfMachineryAndEquipment" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainLossOnDispositionOfAssets1" order="4" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="gifi_ProceedsFromPropertyInsurancePolicy" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" order="4" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_InsuranceRecoveries" order="5" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireShortTermInvestments" order="5" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt" order="7" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" order="8" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInReceivables" order="9" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" order="10" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" order="11" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="12" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" order="13" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" order="14" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" order="15" weight="-1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested" xlink:label="us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_PaymentsOnInsuranceFinanceArrangement" xlink:label="gifi_PaymentsOnInsuranceFinanceArrangement"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfMachineryAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ProceedsFromPropertyInsurancePolicy" xlink:label="gifi_ProceedsFromPropertyInsurancePolicy"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InsuranceRecoveries" xlink:label="us-gaap_InsuranceRecoveries"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireShortTermInvestments" xlink:label="us-gaap_PaymentsToAcquireShortTermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:label="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" xlink:label="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gifi_ContractWithCustomerAssetLiabilityNet" xlink:to="us-gaap_CapitalizedContractCostNet" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CapitalizedContractCostNet" xlink:to="us-gaap_CapitalizedContractCostGross" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gifi_ContractWithCustomerAssetLiabilityNet" xlink:to="gifi_CapitalizedContractCostBillingsToDate" order="1" weight="-1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetLiabilityNet" xlink:label="gifi_ContractWithCustomerAssetLiabilityNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="us-gaap_CapitalizedContractCostNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedContractCostGross" xlink:label="us-gaap_CapitalizedContractCostGross"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_CapitalizedContractCostBillingsToDate" xlink:label="gifi_CapitalizedContractCostBillingsToDate"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails2">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gifi_ContractWithCustomerAssetLiabilityNet" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gifi_ContractWithCustomerAssetLiabilityNet" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="1" weight="-1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_ContractWithCustomerAssetLiabilityNet" xlink:label="gifi_ContractWithCustomerAssetLiabilityNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="1" weight="-1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" order="3" weight="1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedCustomerRelationshipsGross" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" order="1" weight="-1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedCustomerRelationshipsGross" xlink:label="us-gaap_FiniteLivedCustomerRelationshipsGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" order="4" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" order="5" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:to="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:to="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale" order="2" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:to="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense" order="3" weight="1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:label="us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense" xlink:label="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" order="7" weight="1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" xlink:label="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" xlink:label="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" order="2" weight="-1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:label="us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxLiabilities" xlink:to="gifi_DeferredTaxAssetsLiabilitiesGross" order="0" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gifi_DeferredTaxAssetsLiabilitiesGross" xlink:to="us-gaap_DeferredTaxAssetsGross" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="gifi_DeferredTaxAssetsLeases" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxLiabilities" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="gifi_DeferredTaxAssetsLiabilitiesGross" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" order="1" weight="-1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" order="1" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts" order="2" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" order="3" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" order="4" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" order="5" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" order="6" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsOther" order="7" weight="1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsLiabilitiesGross" xlink:label="gifi_DeferredTaxAssetsLiabilitiesGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="us-gaap_DeferredTaxAssetsGross"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsLeases" xlink:label="gifi_DeferredTaxAssetsLeases"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
          <link:loc xlink:type="locator" xlink:href="gifi-20231231.xsd#gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts" xlink:label="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="us-gaap_DeferredTaxAssetsOther"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails2">
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="0" weight="1.00" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_OperatingLeaseLiability" order="1" weight="1.00" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
        </link:calculationLink>
      </link:linkbase>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element id="gifi_PaymentsOnInsuranceFinanceArrangement" name="PaymentsOnInsuranceFinanceArrangement" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" name="ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_OperatingLossCarryforwardsSubjectToExpire" name="OperatingLossCarryforwardsSubjectToExpire" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock" name="RetirementPlanAndStockIncentivePlansDisclosureTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_LitigationExpenseAssociatedWithRecordingLiability" name="LitigationExpenseAssociatedWithRecordingLiability" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_TimeAndMaterialsAndCostReimbursableMember" name="TimeAndMaterialsAndCostReimbursableMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset" name="LitigationExpenseAssociatedWithWriteOffOfNetContractAsset" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_PrecontractCostPolicyTextBlock" name="PrecontractCostPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_ContractWithCustomerReserveForLoss" name="ContractWithCustomerReserveForLoss" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation" name="RemainingTransactionPriceReceivableFromDiscontinuedOperation" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_RemainingFortyVehicleFerryMember" name="RemainingFortyVehicleFerryMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ShipyardSegmentMember" name="ShipyardSegmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense" name="DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_TransactionAndOtherCosts" name="TransactionAndOtherCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_IncomeLossPerShareAndShareholdersEquityTextBlock" name="IncomeLossPerShareAndShareholdersEquityTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_PercentageOfProvisionRequiredFromProceedsReceived" name="PercentageOfProvisionRequiredFromProceedsReceived" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock" name="ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" name="AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_ChargesRelatedToDamageDueToLandfall" name="ChargesRelatedToDamageDueToLandfall" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_CustomerDMember" name="CustomerDMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_HurricaneIdaMember" name="HurricaneIdaMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_HurricaneLauraMember" name="HurricaneLauraMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_IncomeLossPerShareAndShareholdersEquityAbstract" name="IncomeLossPerShareAndShareholdersEquityAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_LongTermContractsOrProgramsDisclosureLineItems" name="LongTermContractsOrProgramsDisclosureLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_FortyVehicleFerryMember" name="FortyVehicleFerryMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember" name="RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_SeventyVehicleFerryMember" name="SeventyVehicleFerryMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_CashSettledRSUAwardsMember" name="CashSettledRSUAwardsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ShortTermDebtRemainingPrincipalBalance" name="ShortTermDebtRemainingPrincipalBalance" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_FerryProjectsMember" name="FerryProjectsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_NetReceivableAmountPurportedLiquidatedDamages" name="NetReceivableAmountPurportedLiquidatedDamages" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_NumberOfDivestedShipyardContracts" name="NumberOfDivestedShipyardContracts" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" name="RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_LakeCharlesLouisianaMember" name="LakeCharlesLouisianaMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" name="NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_NoteAgreementMember" name="NoteAgreementMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_MpsvLitigationMember" name="MpsvLitigationMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ChargesForDamage" name="ChargesForDamage" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_PerformanceBasedRSUAwardsMember" name="PerformanceBasedRSUAwardsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DebtInstrumentPaymentsOfLoan" name="DebtInstrumentPaymentsOfLoan" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_BollingerMember" name="BollingerMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels" name="ConstructionInProgressNumberOfMultiPurposeServiceVessels" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="gifi_LeaseDescription" name="LeaseDescription" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_DeferredTransactionPrice" name="DeferredTransactionPrice" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" name="ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_ProjectsPercentComplete" name="ProjectsPercentComplete" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false"/>
  <xsd:element id="gifi_CashBasedPerformanceAwardsMember" name="CashBasedPerformanceAwardsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_JenningsLouisianaMember" name="JenningsLouisianaMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_PromissoryNoteMember" name="PromissoryNoteMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_AssetsHeldForSalePolicyTextBlock" name="AssetsHeldForSalePolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_RevenueVariableConsiderationContractPriceReduction" name="RevenueVariableConsiderationContractPriceReduction" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_DeferredTaxAssetsLiabilitiesGross" name="DeferredTaxAssetsLiabilitiesGross" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_TargetAmountPayableWithPerformancePeriod" name="TargetAmountPayableWithPerformancePeriod" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" name="EffectiveIncomeTaxReconciliationPermanentDifferencesPercent" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" name="RetainedEarningsIncreaseDecreaseInAccumulatedDeficit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts" name="SuretyBondsRelatesToActiveRetainedShipyardContracts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" name="NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_BalanceSheetDateClassifiedAsNoncurrentMember" name="BalanceSheetDateClassifiedAsNoncurrentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings" name="FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_NatureOfOperationsPolicyTextBlock" name="NatureOfOperationsPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_SuretyContractsOfInsuranceCoverages" name="SuretyContractsOfInsuranceCoverages" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_ServicesSegmentMember" name="ServicesSegmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_NumberOfCorporateNonOperatingSegments" name="NumberOfCorporateNonOperatingSegments" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults" name="DiscontinuedOperationAmountsOfMaterialOperatingResults" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_GainOnInterruptionsInsuranceRecovery" name="GainOnInterruptionsInsuranceRecovery" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock" name="SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_OtherBasisOfPricingMember" name="OtherBasisOfPricingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DeferredTaxLiabilitiesDepreciation" name="DeferredTaxLiabilitiesDepreciation" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_GainOnSettlementOfContractDispute" name="GainOnSettlementOfContractDispute" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_SignificantAccountingPoliciesTable" name="SignificantAccountingPoliciesTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_GainLossOnInsuranceRecovery" name="GainLossOnInsuranceRecovery" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" name="EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1" name="CashBasedPaymentAwardAwardRequisiteServicePeriod1" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_LossContingencyUnderPerformanceBondsIssued" name="LossContingencyUnderPerformanceBondsIssued" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_DisclosureOfSignificantCustomersTableTextBlock" name="DisclosureOfSignificantCustomersTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_SecondFortyVehicleFerryMember" name="SecondFortyVehicleFerryMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ShareRepurchaseProgramMember" name="ShareRepurchaseProgramMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_LongTermContractsOrProgramsDisclosureTable" name="LongTermContractsOrProgramsDisclosureTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets" name="DecreaseToContractReceivablesAndRetainageNetAndContractAssets" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_ChargesAssociatedWithDamageCausedByHurricane" name="ChargesAssociatedWithDamageCausedByHurricane" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm" name="ChargesAssociatedWithInsuranceRecoveriesOfStorm" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_TowingSalvageAndRescueShipMember" name="TowingSalvageAndRescueShipMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_NumberOfDrydocks" name="NumberOfDrydocks" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract" name="ShareBasedPaymentsAndRetirementDisclosureAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember" name="OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale" name="DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_DeferredTaxAssetsLeases" name="DeferredTaxAssetsLeases" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember" name="InsuranceFinanceAndGeneralLiabilityArrangementsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent" name="ContractWithCustomerLiabilityAccruedContractLossesCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_RightOfUseAssetMember" name="RightOfUseAssetMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale" name="PropertyPlantandEquipmentReclassificationtoHeldforsale" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember" name="MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_TimeBasedRSUAwardsMember" name="TimeBasedRSUAwardsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DiscontinuedOperationAmountsOfMaterialAssets" name="DiscontinuedOperationAmountsOfMaterialAssets" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_CustomerCMember" name="CustomerCMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ShortTermPremiumFinanceArrangementMember" name="ShortTermPremiumFinanceArrangementMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold" name="PreTaxLossOnEstimatedCarryValueOfNetAssetsSold" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder" name="ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_SignificantAccountingPoliciesLineItems" name="SignificantAccountingPoliciesLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations" name="NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_ContractWithCustomerAssetLiabilityNet" name="ContractWithCustomerAssetLiabilityNet" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_PPPLoanThresholdRequiringAuditBySBA" name="PPPLoanThresholdRequiringAuditBySBA" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_PPPLoanMember" name="PPPLoanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts" name="AdditionalLossRelatedToAdditionalTransactionAndOtherCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_CapitalExpendituresExcludedFromAccountsPayable" name="CapitalExpendituresExcludedFromAccountsPayable" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" name="NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan" name="ForgivenessOfPrincipalAndInterestOfPPPLoan" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_ShipyardTransactionsMember" name="ShipyardTransactionsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ChargesRelatedToDeductiblesTotal" name="ChargesRelatedToDeductiblesTotal" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_ImpactOfHurricaneIdaDescription" name="ImpactOfHurricaneIdaDescription" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate" name="CapitalizedContractCostEstimatedProfitLossesIncurredToDate" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_FabricationAndServicesSegmentMember" name="FabricationAndServicesSegmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_NumberOfMultiPurposeServiceVesselsProjects" name="NumberOfMultiPurposeServiceVesselsProjects" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_OtherIncomeExpenseNetMember" name="OtherIncomeExpenseNetMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_BalanceSheetDateClassifiedAsCurrentMember" name="BalanceSheetDateClassifiedAsCurrentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DSSAcquisitionMember" name="DSSAcquisitionMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts" name="DeferredTaxAssetsAccruedLossesOnUncompletedContracts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_HoumaFacilitiesMember" name="HoumaFacilitiesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DeferredTaxAssetsDebtInterest" name="DeferredTaxAssetsDebtInterest" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_OperatingCyclePolicyPolicyTextBlock" name="OperatingCyclePolicyPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts" name="ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_ShipyardAssetsMember" name="ShipyardAssetsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" name="ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_NumberOfVehicleFerryProjects" name="NumberOfVehicleFerryProjects" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" name="AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome" name="OperatingLossCarryforwardsLimitationRateOnTaxableIncome" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_FabricationSegmentMember" name="FabricationSegmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_LCFacilityMember" name="LCFacilityMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock" name="RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" name="EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_NetOfEstimatedTransactionAndOtherCosts" name="NetOfEstimatedTransactionAndOtherCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" name="NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_SuretyContractsOfInsuranceCoveragesTerminationDate" name="SuretyContractsOfInsuranceCoveragesTerminationDate" type="xbrli:gYearMonthItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_AllocatedShareBasedCompensationExpenseReversed" name="AllocatedShareBasedCompensationExpenseReversed" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision" name="ProceedsFromSaleOfRealEstateRequiredToMakeProvision" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_ProceedsFromPropertyInsurancePolicy" name="ProceedsFromPropertyInsurancePolicy" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_SuretyContractsOfInsuranceCoveragesTerminated" name="SuretyContractsOfInsuranceCoveragesTerminated" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_SuretyBondsSubjectToDispute" name="SuretyBondsSubjectToDispute" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_CustomerBMember" name="CustomerBMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_DateOfLandfallOccurred" name="DateOfLandfallOccurred" type="xbrli:dateItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_OtherIncomeExpenseNetPolicyTextBlock" name="OtherIncomeExpenseNetPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts" name="EstimateChangeInWorkingCapitalForDivestedShipyardContracts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_CapitalizedContractCostBillingsToDate" name="CapitalizedContractCostBillingsToDate" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" name="ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_GeneralLiabilityArrangementMember" name="GeneralLiabilityArrangementMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_NumberOfResearchVesselsProjects" name="NumberOfResearchVesselsProjects" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="gifi_CustomerAMember" name="CustomerAMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="gifi_ContractAssetUnderDisputeNoncurrent" name="ContractAssetUnderDisputeNoncurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets" name="IncreaseDecreaseInPrepaidExpenseAndOtherAssets" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_SuretyBonds" name="SuretyBonds" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="gifi_EstimatedCostOfConsoleReplacement" name="EstimatedCostOfConsoleReplacement" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="gifi_DiscontinuedOperationAmountsOfMaterialLiabilities" name="DiscontinuedOperationAmountsOfMaterialLiabilities" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
</xsd:schema>
</XBRL>
</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.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136985040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Feb. 29, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Gulf Island Fabrication, Inc.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001031623<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFinStmtErrorCorrectionFlag', window );">Document Financial Statement Error Correction [Flag]</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,197,031<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 37,696,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-34279<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">72-1147390<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">2170 Buckthorne Place<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine2', window );">Entity Address, Address Line Two</a></td>
<td class="text">Suite 420<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">The Woodlands<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">TX<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">77380<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">713<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">714-6100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">LA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">GIFI<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">42<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Ernst & Young LLP<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Houston, Texas<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentsIncorporatedByReferenceTextBlock', window );">Documents Incorporated by Reference</a></td>
<td class="text"><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:4pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">DOCUMENTS INCORPORATED BY REFERENCE</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Portions of the registrant&#8217;s definitive proxy statement to be prepared for use in connection with the registrant&#8217;s 2024 annual meeting of shareholders have been incorporated by reference into Part III of this Annual Report on Form 10-K.</span></p><span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorFirmId</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:nonemptySequenceNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorLocation</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorName</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an annual report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentAnnualReport</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_DocumentFinStmtErrorCorrectionFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates whether any of the financial statement period in the filing include a restatement due to error correction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 402<br> -Subsection w<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentFinStmtErrorCorrectionFlag</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_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentsIncorporatedByReferenceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Documents incorporated by reference.</p></div>
<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-23<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentsIncorporatedByReferenceTextBlock</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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 2 such as Street or Suite number</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</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_EntityPublicFloat</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:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</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_EntityVoluntaryFilers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</p></div>
<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 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityWellKnownSeasonedIssuer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_IcfrAuditorAttestationFlag</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_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136603312">
<tr>
<th class="tl" colspan="2" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED BALANCE SHEETS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 38,176<span></span>
</td>
<td class="nump">$ 33,221<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedCashCurrent', window );">Restricted cash</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,475<span></span>
</td>
<td class="nump">1,603<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HeldToMaturitySecuritiesCurrent', window );">Short-term investments</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">8,233<span></span>
</td>
<td class="nump">9,905<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractReceivableDueOneYearOrLess', window );">Contract receivables and retainage, net</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">36,298<span></span>
</td>
<td class="nump">29,427<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1],[2]</sup></td>
<td class="nump">2,739<span></span>
</td>
<td class="nump">4,839<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses and other assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">6,994<span></span>
</td>
<td class="nump">6,475<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventory</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,072<span></span>
</td>
<td class="nump">1,599<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Assets held for sale</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">5,640<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">101,627<span></span>
</td>
<td class="nump">87,069<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">23,145<span></span>
</td>
<td class="nump">31,154<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,217<span></span>
</td>
<td class="nump">2,217<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherIntangibleAssetsNet', window );">Other intangibles, net</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">700<span></span>
</td>
<td class="nump">842<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other noncurrent assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">739<span></span>
</td>
<td class="nump">13,584<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">128,428<span></span>
</td>
<td class="nump">134,866<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">8,466<span></span>
</td>
<td class="nump">8,310<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[3],[4],[5]</sup></td>
<td class="nump">5,470<span></span>
</td>
<td class="nump">8,196<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses and other liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">14,836<span></span>
</td>
<td class="nump">14,283<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Long-term debt, current</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,075<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">29,847<span></span>
</td>
<td class="nump">30,789<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-term debt, noncurrent</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">18,925<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other noncurrent liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">685<span></span>
</td>
<td class="nump">1,453<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">49,457<span></span>
</td>
<td class="nump">32,242<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders&#8217; equity:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, no par value, 5,000 shares authorized, no shares issued and outstanding</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, no par value, 30,000 shares authorized, 16,258 issued and outstanding at December 31, 2023 and 15,973 at December 31, 2022</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">11,729<span></span>
</td>
<td class="nump">11,591<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">108,615<span></span>
</td>
<td class="nump">107,372<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Accumulated deficit</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(41,373)<span></span>
</td>
<td class="num">(16,339)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders&#8217; equity</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">78,971<span></span>
</td>
<td class="nump">102,624<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders&#8217; equity</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 128,428<span></span>
</td>
<td class="nump">$ 134,866<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract assets at December 31, 2023 and 2022, excluded $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.0</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, associated with revenue recognized in excess of amounts billed for which we have an unconditional right to the consideration. Such amounts are reflected within contract receivables. The increase from December 31, 2022 to December 31, 2023, was primarily due to a customer for our Services Division.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract assets from December 31, 2022 to December 31, 2023, was primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, primarily related to projects for our Shipyard Division. See &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of our accrued contract losses. </span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[4]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during 2023 and 2022, related to amounts included in our contract liabilities balance at December 31, 2022 and 2021, was $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[5]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract liabilities from December 31, 2022 to December 31, 2023, was primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division.</span></td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483475/205-20-45-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-9<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractReceivableDueOneYearOrLess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of right to consideration in exchange for good or service transferred to customer under long-term contract or program when right to consideration is unconditional, excluding amount withheld under retainage provision in contract, to be collected in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 910<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482546/910-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractReceivableDueOneYearOrLess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482598/350-20-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HeldToMaturitySecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance for credit loss, of investment in debt security measured at amortized cost (held-to-maturity), classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479344/326-20-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HeldToMaturitySecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-5<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated amortization of finite-lived and indefinite-lived intangible assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482955/340-10-05-5<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483032/340-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480842/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCashCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCashCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574137428848">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockNoParValue', window );">Preferred stock, no par value</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized (in shares)</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, shares issued (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockNoParValue', window );">Common stock, no par value</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">30,000,000<span></span>
</td>
<td class="nump">30,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">16,258,000<span></span>
</td>
<td class="nump">15,973,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">16,258,000<span></span>
</td>
<td class="nump">15,973,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockNoParValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount per share of no-par value common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockNoParValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockNoParValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount per share of no-par value preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockNoParValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136510176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF OPERATIONS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 151,067<span></span>
</td>
<td class="nump">$ 142,320<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of revenue</a></td>
<td class="nump">162,968<span></span>
</td>
<td class="nump">134,425<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit (loss)</a></td>
<td class="num">(11,901)<span></span>
</td>
<td class="nump">7,895<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative expense</a></td>
<td class="nump">16,278<span></span>
</td>
<td class="nump">18,214<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherOperatingIncomeExpenseNet', window );">Other (income) expense, net</a></td>
<td class="num">(2,296)<span></span>
</td>
<td class="num">(6,904)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating loss</a></td>
<td class="num">(25,883)<span></span>
</td>
<td class="num">(3,415)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNonoperatingNet', window );">Interest (expense) income, net</a></td>
<td class="nump">1,440<span></span>
</td>
<td class="nump">86<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Loss before income taxes</a></td>
<td class="num">(24,443)<span></span>
</td>
<td class="num">(3,329)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (expense) benefit</a></td>
<td class="nump">41<span></span>
</td>
<td class="num">(23)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (24,402)<span></span>
</td>
<td class="num">$ (3,352)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Per share data:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic loss per share</a></td>
<td class="num">$ (1.51)<span></span>
</td>
<td class="num">$ (0.21)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted loss per share</a></td>
<td class="num">$ (1.51)<span></span>
</td>
<td class="num">$ (0.21)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479557/942-235-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 940<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481913/940-20-25-1<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482659/740-20-45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestIncomeExpenseNonoperatingNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net amount of nonoperating interest income (expense).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNonoperatingNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherOperatingIncomeExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net amount of other operating income and expenses, the components of which are not separately disclosed on the income statement, from items that are associated with the entity's normal revenue producing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherOperatingIncomeExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136479408">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Adoption of ASU 2016-13</div></th>
<th class="th"><div>After Adoption of ASU 2016-13</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th">
<div>Common Stock </div>
<div>After Adoption of ASU 2016-13</div>
</th>
<th class="th"><div>Additional Paid-In Capital</div></th>
<th class="th">
<div>Additional Paid-In Capital </div>
<div>After Adoption of ASU 2016-13</div>
</th>
<th class="th"><div>Accumulated Deficit</div></th>
<th class="th">
<div>Accumulated Deficit </div>
<div>Adoption of ASU 2016-13</div>
</th>
<th class="th">
<div>Accumulated Deficit </div>
<div>After Adoption of ASU 2016-13</div>
</th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Dec. 31, 2021</a></td>
<td class="nump">$ 103,908<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 11,384<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 105,511<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (12,987)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Beginning Balance (in shares) at Dec. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,622<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">(3,352)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,352)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock', window );">Vesting of restricted stock</a></td>
<td class="num">(234)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (23)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(211)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares', window );">Vesting of restricted stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">351<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">2,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 230<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,072<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Dec. 31, 2022</a></td>
<td class="nump">$ 102,624<span></span>
</td>
<td class="num">$ (632)<span></span>
</td>
<td class="nump">$ 101,992<span></span>
</td>
<td class="nump">$ 11,591<span></span>
</td>
<td class="nump">$ 11,591<span></span>
</td>
<td class="nump">107,372<span></span>
</td>
<td class="nump">$ 107,372<span></span>
</td>
<td class="num">(16,339)<span></span>
</td>
<td class="num">$ (632)<span></span>
</td>
<td class="num">$ (16,971)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending Balance (in shares) at Dec. 31, 2022</a></td>
<td class="nump">15,973<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,973<span></span>
</td>
<td class="nump">15,973<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (24,402)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(24,402)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock', window );">Vesting of restricted stock</a></td>
<td class="num">(482)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (48)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(434)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares', window );">Vesting of restricted stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">315<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">1,991<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 199<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,792<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Repurchases of common stock</a></td>
<td class="num">(128)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (13)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(115)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Repurchases of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(30)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Dec. 31, 2023</a></td>
<td class="nump">$ 78,971<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 11,729<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 108,615<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (41,373)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending Balance (in shares) at Dec. 31, 2023</a></td>
<td class="nump">16,258<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,258<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Adjustment to additional paid in capital, income tax effect from share-based compensation, net, in shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Adjustments to additional paid in capital share based compensation vesting of restricted stock.</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;">gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480767/946-205-45-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574137338640">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (24,402)<span></span>
</td>
<td class="num">$ (3,352)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net loss to net cash provided by (used in) operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">5,466<span></span>
</td>
<td class="nump">5,098<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetImpairmentCharges', window );">Asset impairments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">484<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Change in allowance for doubtful accounts and credit losses</a></td>
<td class="num">(410)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets1', window );">Loss on sale or disposal of fixed assets, net</a></td>
<td class="nump">27<span></span>
</td>
<td class="nump">19<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InsuranceRecoveries', window );">Gain on insurance recoveries</a></td>
<td class="num">(571)<span></span>
</td>
<td class="num">(1,200)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">1,991<span></span>
</td>
<td class="nump">2,302<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInReceivables', window );">Contract receivables and retainage, net</a></td>
<td class="num">(7,093)<span></span>
</td>
<td class="num">(13,441)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerAsset', window );">Contract assets</a></td>
<td class="nump">2,100<span></span>
</td>
<td class="num">(80)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets', window );">Prepaid expenses, inventory and other current assets</a></td>
<td class="num">(133)<span></span>
</td>
<td class="nump">2,224<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(9)<span></span>
</td>
<td class="num">(1,088)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability', window );">Contract liabilities</a></td>
<td class="num">(2,726)<span></span>
</td>
<td class="nump">1,548<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued expenses and other current liabilities</a></td>
<td class="nump">1,206<span></span>
</td>
<td class="num">(561)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet', window );">Noncurrent assets and liabilities, net</a></td>
<td class="nump">31,751<span></span>
</td>
<td class="num">(876)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by (used in) operating activities</a></td>
<td class="nump">7,197<span></span>
</td>
<td class="num">(8,923)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="num">(2,876)<span></span>
</td>
<td class="num">(3,086)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested', window );">Proceeds from Shipyard Transaction</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">886<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfMachineryAndEquipment', window );">Proceeds from sale of property and equipment</a></td>
<td class="nump">456<span></span>
</td>
<td class="nump">2,035<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ProceedsFromPropertyInsurancePolicy', window );">Recoveries from insurance claims</a></td>
<td class="nump">245<span></span>
</td>
<td class="nump">1,200<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireShortTermInvestments', window );">Purchases of short-term investments</a></td>
<td class="num">(39,028)<span></span>
</td>
<td class="num">(9,905)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments', window );">Maturities of short-term investments</a></td>
<td class="nump">40,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(503)<span></span>
</td>
<td class="num">(8,870)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_PaymentsOnInsuranceFinanceArrangement', window );">Payments on Insurance Finance Arrangement</a></td>
<td class="num">(1,257)<span></span>
</td>
<td class="num">(1,738)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Repurchases of common stock</a></td>
<td class="num">(128)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Tax payments for vested stock withholdings</a></td>
<td class="num">(482)<span></span>
</td>
<td class="num">(234)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(1,867)<span></span>
</td>
<td class="num">(1,972)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase (decrease) in cash, cash equivalents and restricted cash</a></td>
<td class="nump">4,827<span></span>
</td>
<td class="num">(19,765)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash, beginning of period</a></td>
<td class="nump">34,824<span></span>
</td>
<td class="nump">54,589<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash, end of period</a></td>
<td class="nump">39,651<span></span>
</td>
<td class="nump">34,824<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental cash flow information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest paid</a></td>
<td class="nump">49<span></span>
</td>
<td class="nump">149<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_CapitalExpendituresExcludedFromAccountsPayable', window );">Accounts payable excluded from capital expenditures</a></td>
<td class="nump">383<span></span>
</td>
<td class="nump">$ 217<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale', window );">Reclassification of property, plant and equipment to assets held for sale</a></td>
<td class="nump">$ 5,640<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_CapitalExpendituresExcludedFromAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Capital expenditures excluded from accounts payable.</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;">gifi_CapitalExpendituresExcludedFromAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase (decrease) in prepaid expense and other assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_PaymentsOnInsuranceFinanceArrangement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments on insurance finance arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_PaymentsOnInsuranceFinanceArrangement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ProceedsFromPropertyInsurancePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from property insurance policy.</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;">gifi_ProceedsFromPropertyInsurancePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Property, plant and equipment, reclassification to held-for-sale.</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;">gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481877/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnDispositionOfAssets1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInContractWithCustomerAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482312/912-310-45-11<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in noncurrent operating assets after deduction of noncurrent operating liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the total amount due within one year (or one operating cycle) from all parties, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InsuranceRecoveries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount recovered from insurance. These recoveries reduce costs and losses that are reported as a separate line item under operating expenses.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InsuranceRecoveries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common stock during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireShortTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for securities or other assets acquired, which qualify for treatment as an investing activity and are to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents the cash inflow during the period from the sale of a component of the entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from maturities, prepayments, calls and collections of all investments, including securities and other assets, having ready marketability and intended by management to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfMachineryAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from sale of machinery and equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfMachineryAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574142353568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock', window );">ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1. ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Nature of Operations</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gulf Island Fabrication, Inc. (together with its subsidiaries, &#8220;Gulf Island,&#8221; &#8220;the Company,&#8221; &#8220;we,&#8221; &#8220;us&#8221; and &#8220;our&#8221;) is a leading fabricator of complex steel structures and modules and a provider of specialty services, including project management, hookup, commissioning, repair, maintenance, scaffolding, coatings, welding enclosures, civil construction and staffing services to the industrial and energy sectors. Our customers include U.S. and, to a lesser extent, international energy producers; refining, petrochemical, LNG, industrial and power operators; and EPC companies. We currently operate and manage our business through </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">three</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> operating divisions (&#8220;Services&#8221;, &#8220;Fabrication&#8221; and &#8220;Shipyard&#8221;) and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">one</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> non-operating division (&#8220;Corporate&#8221;), which represent our reportable segments. Our corporate headquarters is located in The Woodlands, Texas and our primary operating facilities are located in Houma, Louisiana (&#8220;Houma Facilities&#8221;). See Note 9 for further discussion of our reportable segments.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In the second quarter 2021, we sold our Shipyard Division operating assets and certain construction contracts (&#8220;Shipyard Transaction&#8221;). The Shipyard Transaction excluded the contracts and related obligations for our seventy-vehicle ferry and two forty-vehicle ferry projects (collectively, &#8220;Ferry Projects&#8221;) that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. The wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. See Note 2 for further discussion of our Ferry Projects, Note 7 for further discussion of the resolution of our MPSV Litigation and Note 9 for further discussion of the wind down of our Shipyard Division operations.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basis of Presentation</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying Consolidated Financial Statements (&#8220;Financial Statements&#8221;) reflect all wholly owned subsidiaries. Intercompany balances and transactions have been eliminated in consolidation. The Financial Statements have been prepared in accordance with the rules and regulations of the U.S. Securities and Exchange Commission (the &#8220;SEC&#8221;) and accounting principles generally accepted in the U.S. (&#8220;GAAP&#8221;).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating Cycle</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The duration of our contracts vary, but may extend beyond twelve months from the date of contract award. Consistent with industry practice, assets and liabilities have been classified as current under the operating cycle concept whereby all contract-related items are classified as current regardless of whether cash will be received or paid within a twelve-month period. Assets and liabilities classified as current, which may not be received or paid within the next twelve months, include contract retainage, contract assets and contract liabilities. Variations from normal contract terms may result in the classification of assets and liabilities as long-term.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Use of Estimates</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preparation of our Financial Statements in conformity with GAAP requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenue and expenses and related disclosures of contingent assets and liabilities. We believe our most significant estimates and judgments are associated with:</span></p><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">revenue recognition for our long-term contracts, including application of the percentage-of-completion (&#8220;POC&#8221;) method, estimating costs to complete each contract and the recognition of incentives, unapproved change orders, claims (including amounts arising from disputes with customers) and liquidated damages;</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">fair value and recoverability assessments that must be periodically performed with respect to long-lived tangible assets, goodwill and other intangible assets; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">determination of deferred income tax assets, liabilities and related valuation allowances;</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">reserves for bad debts and credit losses; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">liabilities related to self-insurance programs; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">determination of the fair-value of our long-term debt; and</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the impacts of volatile oil and gas prices and macroeconomic conditions on our business, estimates and judgments as discussed further below.</span></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">If the underlying estimates and assumptions upon which our Financial Statements are based change in the future, actual amounts may differ materially from those included in the Financial Statements.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Oil and Gas Price Volatility and Macroeconomic Conditions </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; For over a decade, prices of oil and gas have experienced significant volatility, including depressed prices over extended periods, which negatively impacted our end markets and operating results. Beginning in 2020, the global coronavirus pandemic (&#8220;COVID-19&#8221;) added another layer of pressure and uncertainty on oil and gas prices (with oil prices reaching a twenty-year low and gas prices reaching a four-year low in 2020), which further negatively impacted certain of our end markets through the first quarter 2022. This volatility in oil and gas prices was compounded by Russia&#8217;s invasion of Ukraine in February 2022 (and the related European energy crisis), and the U.S. and other countries actions in response, as well as continued inflationary pressures, resulting in elevated energy prices (with oil prices reaching an eight-year high and gas prices reaching a fourteen-year high in 2022), which positively impacted certain of our end markets. While oil and gas prices declined in 2023, prices have somewhat stabilized, but the duration of such stability is uncertain and difficult to predict, particularly in light of geopolitical turmoil and uncertainty.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, global economic factors that are beyond our control, have and could continue to impact our operations, including, but are not limited to, labor constraints, supply chain disruptions, inflationary pressures, economic slowdowns and recessions, natural disasters, public health crises, and geopolitical conflicts.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The ultimate business and financial impacts of oil and gas price volatility and macroeconomic conditions on our business and results of operations continues to be uncertain, but the impacts have included, or may continue to include, among other things, reduced bidding activity; suspension or termination of backlog; deterioration of customer financial condition; and unanticipated project costs and schedule delays due to supply chain disruptions, labor and material price increases, lower labor productivity, increased employee and contractor absenteeism and turnover, craft labor hiring challenges, increased safety incidents, lack of performance by subcontractors and suppliers, and contract disputes. We continue to monitor the impacts of oil and gas price volatility and macroeconomic conditions on our operations, and our estimates in future periods will be revised for any events and changes in circumstances arising after the date of this Report.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income (Loss) Per Share</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basic income (loss) per share is calculated by dividing net income or loss by the weighted average number of common shares outstanding for the period. Diluted income (loss) per share reflects the assumed conversion of dilutive securities in periods in which income is reported. See Note 8 for calculations of our basic and diluted income (loss) per share.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash Equivalents and Short-term Investments</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Cash Equivalents </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consider investments with original maturities of three months or less when purchased to be cash equivalents. We hold substantially all of our cash deposits with Hancock Whitney Bank (&#8220;Whitney Bank&#8221;).</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Restricted Cash </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; At December 31, 2023 and 2022, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, of restricted cash as security for letters of credit issued under our letter of credit facility (&#8220;LC Facility&#8221;) with Whitney Bank. Our restricted cash is held in an interest-bearing money market account with Whitney Bank. The classification of the restricted cash as current and noncurrent is determined by the contractual maturity dates of the letters of credit being secured, with letters of credit having </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">maturity dates of twelve months or less from the balance sheet date classified as current</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, and letters of credit having </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">maturity dates of longer than twelve months from the balance sheet date classified as noncurrent</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. See Note 4 for further discussion of our letters of credit and associated security requirements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Short-term Investments </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; We consider investments with original maturities of more than three months but less than twelve months to be short-term investments. At December 31, 2023 and 2022, our short-term investments included U.S. Treasuries with original maturities of approximately four to six months. We intend to hold these investments until maturity and it is not more likely than not that we will be required to sell the investments prior to their maturity. The investments are stated at amortized costs, which approximates fair value due to their near-term maturities. All short-term investments are traded on active markets with quoted prices and represent Level 1 fair value measurements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">   </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory is recorded at the lower of cost or net realizable value determined using the first-in-first-out basis. The cost of inventory includes acquisition costs, production or conversion costs, and other costs incurred to bring the inventory to a current location and condition. Net realizable value is our estimated selling price in the normal course of business, less reasonably predictable costs of completion, disposal and transportation. An allowance for excess or inactive inventory is recorded based on an analysis that considers current inventory levels, historical usage patterns, estimates of future sales and salvage value.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Allowance for Doubtful Accounts and Credit Losses</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As further discussed under &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">New Accounting Standards&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> below, we adopted the new accounting standard for measuring credit losses effective January 1, 2023. In the normal course of business, we extend credit to our customers on a short-term basis and contract receivables are generally not collateralized; however, we typically have the right to place liens on our projects in the event of nonpayment by our customers. We provide an allowance for credit losses and routinely review individual contract receivable balances and other financial assets for collectability and make provisions for probable uncollectible amounts as necessary. Among the factors considered in our review are the financial condition of our customer and its access to financing, underlying disputes with the customer, the age and value of the receivable balance, company-specific credit ratings, historical company-specific uncollectable amounts and economic conditions in general. See Note 2 for further discussion of our allowance for doubtful accounts and credit losses.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stock-Based Compensation</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Awards under our stock-based compensation plans are calculated using a fair value-based measurement method. Depending on the terms of the award, we use the straight-line and graded vesting methods to recognize share-based compensation expense over the requisite service period of the award. We recognize the excess tax benefit or tax deficiency resulting from the difference between the deduction we receive for tax purposes and the stock-based compensation expense we recognize for financial reporting purposes created when common stock vests, as an income tax benefit or expense on our Consolidated Statement of Operations (&#8220;Statement of Operations&#8221;). Tax payments made on behalf of employees to taxing authorities in order to satisfy employee income tax withholding obligations from the vesting of shares under our stock-based compensation plans are classified as a financing activity on our Consolidated Statement of Cash Flows (&#8220;Statement of Cash Flows&#8221;). See Note 6 for further discussion of our stock-based and other compensation plans.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Assets Held for Sale</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Assets held for sale </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">are measured at the lower of their carrying amount or fair value less cost to sell. See Note 3 for further discussion of our assets held for sale.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Depreciation and Amortization Expense</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment are depreciated on a straight-line basis over estimated useful lives ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_0afe6cb2-44da-43fa-ad5a-e2651f8bd43e;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">25 years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Ordinary maintenance and repairs, which do not extend the physical or economic lives of the plant or equipment, are charged to expense as incurred. Intangible assets are amortized on a straight-line basis over seven years and amortization expense is reflected within general and administrative expense on our Statement of Operations. See Note 3 for further discussion of our property, plant and equipment and intangible assets.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Long-Lived Assets</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Goodwill </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent any indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). Our Services Division represents our only reporting unit with goodwill. We perform our annual impairment assessment during the fourth quarter of each year based upon balances as of October 1. In evaluating goodwill for impairment, we have the option to first assess qualitative factors to determine whether it is more likely than not that the fair value of our reporting unit is greater than its carrying value. If we determine that it is more likely than not that the carrying value of the reporting unit is greater than its fair value, we perform a quantitative impairment test by calculating the fair value of the reporting unit and comparing it to the carrying value of the reporting unit, and we recognize an impairment charge to the extent its carrying value exceeds its fair value. To determine the fair value of our reporting unit and test for impairment, we utilize an income approach (discounted cash flow method) as we believe this is the most direct approach to incorporate the specific economic attributes and risk profile of our reporting unit into our valuation model. If, based on future assessments, our goodwill is deemed to be impaired, the impairment would result in a charge to our operating results in the period of impairment. See Note 3 for further discussion of our annual goodwill impairment assessment.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other Long-Lived Assets </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our property, plant and equipment, lease assets (included within other noncurrent assets) and finite-lived intangible assets are reviewed for impairment when events or changes in circumstances indicate that the carrying amount may not be recoverable. If a recoverability assessment is required, we compare the estimated future undiscounted cash flow associated with the asset or asset group to its carrying amount to determine if an impairment exists. An asset group constitutes the minimum level for which identifiable cash flows are principally independent of the cash flows of other assets or asset groups. An impairment loss is measured by comparing the fair value of the asset or asset group to its carrying amount and the excess of the carrying amount of the asset or asset group over its fair value is recorded as an impairment charge. Fair value is determined based on discounted cash flows, appraised values or third-party indications of value, as appropriate. We had no indicators of impairment during 2023. See Note 3 for discussion of our corporate office lease impairment during 2022.</span></p></div><div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leases</span></p></div><div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We record a right-of-use asset and an offsetting lease liability on our Consolidated Balance Sheet (&#8220;Balance Sheet&#8221;) equal to the present value of our lease payments for leases with an original term of longer than twelve months. We do not record an asset or liability for leases with an original term of twelve months or less and we do not separate lease and non-lease components for our leases. Our lease assets are reflected within other noncurrent assets, and the current and noncurrent portions of our lease liabilities are reflected within accrued expenses and other liabilities, and other noncurrent liabilities, respectively, on our Balance Sheet. For leases with escalations over the life of the lease, we recognize expense on a straight-line basis. See Note 3 for further discussion of our lease assets and liabilities.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair Value Measurements</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair value determinations for financial assets and liabilities are based on the particular facts and circumstances. Financial instruments are required to be categorized within a valuation hierarchy based upon the lowest level of input that is significant to the fair value measurement.  The three levels of the valuation hierarchy are as follows:</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 1 &#8211; inputs are based upon quoted prices for identical instruments traded in active markets.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 2 &#8211; inputs are based upon quoted prices for similar instruments in active markets and model-based valuation techniques for which all significant assumptions are observable in the market.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 3 &#8211; inputs are based upon model-based valuation techniques for which significant assumptions are generally not observable in the market and typically reflect estimates and assumptions that we believe market participants would use in pricing the asset or liability. These include discounted cash flow models and similar valuation techniques.</span></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The carrying amounts of our financial instruments, including cash and cash equivalents, short-term investments, accounts receivable and accounts payable approximate their fair values. Our fair value assessments for determining the impairments of inventory, assets held for sale, goodwill and long-lived assets, are non-recurring fair value measurements that fall within Level 3 of the fair value hierarchy. Our fair value assessments for long-term debt are recurring fair value measurements that fall within Level 2 of the fair value hierarchy, and are determined using various methods, including quoted prices for identical or similar securities in both active and inactive markets. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 3 for further discussion of our assets held for sale and Note 4 for further discussion of our long-term debt.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue Recognition</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our revenue is derived from customer contracts and agreements that are awarded on a competitively bid and negotiated basis using a range of contracting options, including fixed-price, unit-rate, time and materials (&#8220;T&amp;M&#8221;) and cost-reimbursable, or a combination thereof. Our contracts primarily relate to the fabrication of steel structures and modules, and certain service arrangements. We recognize revenue from our contracts in accordance with Accounting Standards Update (&#8220;ASU&#8221;) 2014-09, Topic 606 </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Revenue from Contracts with Customers&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> (&#8220;Topic 606&#8221;).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Topic 606 requires entities to recognize revenue in a way that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the entity expects to be entitled in exchange for those goods or services. Additionally, provisions of Topic 606 specify which goods and services are distinct and represent separate performance obligations (representing the unit of account in Topic 606) within a contract and which goods and services (which could include multiple contracts or agreements) should be aggregated. In general, a performance obligation is a contractual obligation to construct and/or transfer a distinct good or service to a customer. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Revenue for performance obligations satisfied over time are recognized as the work progresses. Revenue for performance obligations that do not meet the criteria for over time recognition are recognized at a point-in-time when a performance obligation is complete and a customer has obtained control of a promised asset.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Long-term Contracts Satisfied Over Time </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue for our long-term contracts is recognized using the POC method based on contract costs incurred to date compared to total estimated contract costs (an input method). Fixed-price contracts, or contracts with a more significant fixed-price component, generally provide us with greater control over project schedule and the timing of when work is performed and costs are incurred, and accordingly, when revenue is recognized. Unit-rate, T&amp;M and cost-reimbursable contracts generally have more variability in the scope of work and provide our customers with greater influence over the timing of when we perform our work, and accordingly, such contracts often result in less predictability with respect to the timing of when revenue is recognized. Contract costs include direct costs, such as materials and labor, and indirect costs attributable to contract activity. Material costs that are significant to a contract and do not reflect an accurate measure of project completion are excluded from the determination of our contract progress. Revenue for such materials is only recognized to the extent of costs incurred. Revenue and gross profit or loss for contracts accounted for using the POC method can be significantly affected by changes in estimated cost to complete such contracts. Significant estimates impacting the cost to complete a contract include: forecast costs of engineering, materials, equipment and subcontracts; forecast costs of labor and labor productivity; schedule durations, including subcontractor and supplier progress; contract disputes, including claims; achievement of contractual performance requirements; and contingency, among others. Although our customers retain the right and ability to change, modify or discontinue further work at any stage of a contract, in the event our customers discontinue work, they are required to compensate us for the work performed to date. The cumulative impact of revisions in total cost estimates during the progress of work is reflected in the period in which these changes become known, including, to the extent required, the reversal of profit recognized in prior periods and the recognition of losses expected to be incurred on contracts. Due to the various estimates inherent in our contract accounting, actual results could differ from those estimates, which could result in material changes to our Financial Statements and related disclosures. See Note 2 for further discussion of projects with significant changes in estimated margins during 2023 and 2022.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Short-term Contracts and Contracts Satisfied at a Point In Time &#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Revenue for our short-term contracts (which includes revenue associated with our master services arrangements) and contracts that do not satisfy the criteria for revenue recognition over time is recognized when the work is performed or when control of the asset is transferred, the related costs are incurred and collection is reasonably assured.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Variable Consideration</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Revenue and gross profit or loss for contracts can be significantly affected by variable consideration, which can be in the form of unapproved change orders, claims (including amounts arising from disputes with customers), incentives and liquidated damages that may not be resolved until the later stages of the contract or after the contract has been completed. Variable consideration can also include revenue associated with work performed on a unit-rate, T&amp;M or cost-reimbursable basis that is recognized using the POC method. We estimate variable consideration based on the amount we expect to be entitled and include estimated amounts in transaction price to the extent it is probable that a significant future reversal of cumulative revenue recognized will not occur or when we conclude that any significant uncertainty associated with the variable consideration is resolved. See Note 2 for further discussion of our unapproved change orders, claims, incentives and liquidated damages.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Additional Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Topic 606 also requires disclosures regarding the nature, amount, timing and uncertainty of revenues and cash flows from contracts with customers. See Note 2 for required disclosures under Topic 606.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pre-Contract Costs</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pre-contract costs are generally charged to cost of revenue as incurred, but in certain cases their recognition may be deferred if specific probability criteria are met. At December 31, 2023 and 2022, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> deferred pre-contract costs.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (Income) Expense, Net</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (income) expense, net, generally represents recoveries or provisions for bad debts and credit losses, gains or losses associated with the sale or disposition of property and equipment, and income or expense associated with certain nonrecurring items. For 2023 and 2022, other (income) expense, net included gains of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida. See Note 2 for further discussion of the impacts of Hurricane Ida.</span></p></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income Taxes</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income taxes have been provided for using the liability method. Deferred income taxes reflect the net tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes using enacted rates expected to be in effect during the year in which the differences are expected to reverse. Due to state income tax laws related to the apportionment of revenue for our projects, judgment is required to estimate the effective tax rate expected to apply to tax differences that are anticipated to reverse in the future.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A valuation allowance is provided to reserve for deferred tax assets (&#8220;DTA(s)&#8221;) if, based upon the available evidence, it is more likely than not that some or all of the DTAs will not be realized. The realization of our DTAs depends on our ability to generate sufficient taxable income of the appropriate character and in the appropriate jurisdictions. Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. See Note 5 for further discussion of our income taxes and DTAs.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">New Accounting Standards</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financial instruments </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the first quarter 2023, we adopted ASU 2016-13, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Financial Instruments - Credit Losses - Measurement of Credit Losses on Financial Instruments,&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> which changes the way we evaluate credit losses for most financial assets and certain other instruments. For trade and other receivables, short-term investments, loans and other instruments, we are required to use a new forward-looking &#8220;expected loss&#8221; model to evaluate impairment, which includes considering a broader range of information to estimate expected credit losses and may potentially result in earlier recognition of allowances for losses. The new accounting standard was adopted using the cumulative-effect transition method with any cumulative-effect adjustment being recorded to accumulated deficit on January 1, 2023. Upon adoption, we recorded a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million increase to beginning accumulated deficit, a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million decrease to contract receivables and retainage, net and contract assets, and a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million decrease to other noncurrent assets, on our Balance Sheet. Adoption of the new standard did not have a material effect on our results of operations or related disclosures.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Business Combinations </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the first quarter 2023, we adopted ASU 2021-08, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Business Combinations - Accounting for Contract Assets and Contract Liabilities from Contracts with Customers,&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> which changes the way companies measure contract assets and contract liabilities from contracts with customers acquired in a business combination and creates an exception to the general recognition and measurement principle of ASC 805. Adoption of the new standard did not have a material effect on our financial position, results of operations or related disclosures.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Segment Reporting </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the fourth quarter 2023, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued ASU 2023-07 &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Segment Reporting - Improvements to Reportable Segment Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">,&#8221; which requires additional information about a public company&#8217;s significant segment expenses and more timely and detailed segment information reporting throughout the fiscal period. The new standard will be effective for us in the fourth quarter 2024. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard is required to be applied using the retrospective transition method. We are assessing the effect that the new standard will have on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Income Taxes </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the fourth quarter 2023, the FASB issued ASU 2023-09 &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Income Taxes - Improvements to Income Tax Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">,&#8221; which requires enhanced disclosures related to rate reconciliation and income taxes paid information. The new standard will be effective for us in the fourth quarter 2025. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard may be applied using either the prospective or retrospective transition method. We are assessing the effect of the new standard on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the organization, consolidation and basis of presentation of financial statements disclosure, and significant accounting policies of the reporting entity. May be provided in more than one note to the financial statements, as long as users are provided with an understanding of (1) the significant judgments and assumptions made by an enterprise in determining whether it must consolidate a VIE and/or disclose information about its involvement with a VIE, (2) the nature of restrictions on a consolidated VIE's assets reported by an enterprise in its statement of financial position, including the carrying amounts of such assets, (3) the nature of, and changes in, the risks associated with an enterprise's involvement with the VIE, and (4) how an enterprise's involvement with the VIE affects the enterprise's financial position, financial performance, and cash flows. Describes procedure if disclosures are provided in more than one note to the financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/tableOfContent<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 275<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//275/tableOfContent<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//810/tableOfContent<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//205/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574137201760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2. REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As discussed in Note 1, we recognize revenue for our contracts in accordance with Topic 606. Summarized below are required disclosures under Topic 606 and other relevant guidance.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Disaggregation of Revenue</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following tables summarize revenue for each of our operating segments, disaggregated by contract type and duration, for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.787%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year ended December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Eliminations</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,618</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">51,015</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">33</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">22,183</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">87,914</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">38,031</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">125,945</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,016</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,077</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,939</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">93,548</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">89,046</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,110</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">151,067</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,618</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">82,535</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">33</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">53,703</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">91,930</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">6,511</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,077</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">97,364</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">93,548</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">89,046</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,110</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">151,067</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.787%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year ended December 31, 2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Eliminations</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,035</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">36,127</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">48,826</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">79,426</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">9,526</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">88,952</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,561</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,646</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">665</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,542</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">87,022</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">48,299</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">672</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">142,320</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,035</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">43,037</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">55,743</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">81,987</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,262</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">672</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">86,577</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">87,022</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">48,299</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">672</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">142,320</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future Performance Obligations</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes remaining performance obligations for each of our operating segments, disaggregated by contract type, at </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2023 (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.505%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.975%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.975%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.975%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.975%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">502</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">11,446</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">709</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">12,657</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">293</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">293</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">502</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">11,739</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">709</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">12,950</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">We expect all of our performance obligations at December 31, 2023, to be recognized as revenue during 2024. </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">C</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">ertain factors and circumstances could result in changes in the timing of recognition of our performance obligations as revenue and the amounts ultimately recognized.</span></div></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contracts Assets and Liabilities</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of customer invoicing and recognition of revenue using the POC method may occur at different times. Customer invoicing is generally dependent upon contractual billing terms, which could provide for customer payments in advance of performing the work, milestone billings based on the completion of certain phases of the work, or billings when services are provided. Revenue recognized in excess of amounts billed is reflected as contract assets on our Balance Sheet, or to the extent we have an unconditional right to the consideration, is reflected as contract receivables on our Balance Sheet. Amounts billed in excess of revenue recognized, and accrued contract losses, are reflected as contract liabilities on our Balance Sheet. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information with respect to contracts that were incomplete at December 31, 2023 and 2022, is as follows (in thousands):</span></span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Costs incurred to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">117,274</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">112,693</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Estimated losses incurred to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">12,735</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">12,610</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Sub-total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">104,539</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">100,083</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Billings to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">107,270</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">103,440</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,731</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,357</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The above amounts are included within the following captions on our Balance Sheet at December 31, 2023 and 2022 (in thousands):</span></p><p style="margin-left:4.533%;text-indent:-3.17%;padding-left:2.933%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract assets</span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">&#160;(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,739</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,839</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract liabilities </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3), (4), (5)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,470</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">8,196</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,731</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,357</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract assets from December 31, 2022 to December 31, 2023, was primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract assets at December 31, 2023 and 2022, excluded $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.0</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, associated with revenue recognized in excess of amounts billed for which we have an unconditional right to the consideration. Such amounts are reflected within contract receivables. The increase from December 31, 2022 to December 31, 2023, was primarily due to a customer for our Services Division.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract liabilities from December 31, 2022 to December 31, 2023, was primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(4)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during 2023 and 2022, related to amounts included in our contract liabilities balance at December 31, 2022 and 2021, was $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">  </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(5)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, primarily related to projects for our Shipyard Division. See &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of our accrued contract losses. </span></div></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Significant Customers</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes revenue for customers that accounted for 10% or more of our consolidated revenue for 2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:47.57%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:22.256%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:22.256%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer A</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">70,497</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">54,257</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer B</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">26,956</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">*</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer C </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">16,498</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">14,635</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer D </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">15,481</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">*</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:4.133%;text-indent:-3.602%;padding-left:3.333%;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(*)	The customer revenue was less than </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% of consolidated revenue for the year.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">For 2023, these customers accounted for </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% or more of our consolidated revenue due to lower revenue for the period associated with a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division, resulting from the resolution of our MPSV Litigation. See </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below and Note 7 for further discussion of the charge and resolution of our MPSV Litigation.</span></div></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Allowance for Doubtful Accounts and Credit Losses</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our provision for bad debts and credit losses is included in other (income) expense, net on our Statement of Operations. For 2023, we recognized income of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> m</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">illion associated with revisions to our allowance for doubtful accounts and credit losses, and for 2022, changes were not significant. Our allowance for doubtful accounts and credit losses at December 31, 2023 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, and it was not significant at December 31, 2022. We recorded a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million increase to beginning accumulated deficit as of January 1, 2023, in connection with our adoption of ASU 2016-13. We had no significant write-offs or recoveries of previously recorded bad debts during 2023 or 2022. See </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;New Accounting Standards&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in Note 1 for further discussion of our adoption of ASU 2016-13.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Variable Consideration</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">For 2023 and 2022, we had no material amounts in revenue related to unapproved change orders, claims or incentives, other than amounts related to the resolution of our MPSV Litigation discussed further below. However, at December 31, 2023 and 2022, certain active projects within our Shipyard Division reflected a reduction to our estimated contract price for liquidated damages of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Changes in Project Estimates</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We determine the impact of changes in estimated margins on projects for a given period by calculating the amount of revenue recognized in the period that would have been recognized in a prior period had such estimated margins been forecasted in the prior period. The total impact of changes in estimated margins for a project as disclosed on a quarterly basis may be different from the applicable year-to-date impact due to the application of the POC method and the changing progress of the project at each period end. Such impacts may also be different when a project is commenced and completed within the applicable year-to-date period but spans multiple quarters.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Estimates for 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2023, we recorded a charge of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division, reflected as a reduction to revenue, resulting from the resolution of our MPSV Litigation. See Note 7 for further discussion of the charge and resolution of our MPSV Litigation. In addition, during</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> 2023,</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> significant changes in estimated margins on projects negatively impacted operating results for our Shipyard Division by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The changes in estimates were associated with the following:</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Seventy-Vehicle Ferry Project</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2023, we completed, delivered and received final customer acceptance of our seventy-vehicle ferry. D</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">uring 2023, our operating results were negatively impacted by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from changes in estimates on the project, associated primarily with increased materials and subcontracted services costs, duration related costs due to extensions of schedule and net reductions to contract price. The cost impacts were primarily due to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">delays in the receipt of certain equipment that required replacement and subcontractor delays. The contract price impacts were primarily due to a price reduction resulting from the required replacement of the vessel&#8217;s propeller blades (discussed further below), offset partially by price increases due to favorable resolution of customer change orders and the customer&#8217;s agreement to forego a portion of previously forecasted liquidated damages.</span></div></div><p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As discussed in our previous quarterly filings, in connection with the delivery and commissioning of the vessel in the second quarter 2023, corrosion on the propeller blades was identified and the customer determined that replacement of the propeller blades will be required. The customer has agreed to directly procure the new propeller blades and take responsibility for future installation of the blades once received. Further, the customer agreed to bear a portion of the cost of the new propeller blades, with the remainder borne by us through the aforementioned contract price reduction.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, the project was in a loss position and the warranty period for the vessel ends in the third quarter 2024. The project would experience further losses if we incur unanticipated warranty costs on the vessel.</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Forty-Vehicle Ferry Projects</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022, we substantially completed and delivered the first of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">two</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> forty-vehicle ferries, and during 2023, we received final customer acceptance of the ferry. Further, during 2023, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">we substantially </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">completed and delivered our second forty-vehicle ferry, and we anticipate final customer acceptance of the ferry in March 2024. During 2023, our operating results were negatively impacted by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from changes in estimates on the projects, associated primarily with (i) warranty costs on the first vessel, and (ii) increased materials and subcontracted services costs and duration related costs due to extensions of schedule, including forecast liquidated damages, on the second vessel. The impacts for the second vessel were primarily due to delays in the receipt of certain equipment that required replacement and subcontractor delays. </span></div></div><p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As discussed in our 2022 Financial Statements and subsequent quarterly filings, as a result of design deficiencies, we experienced rework, construction and commissioning challenges on the </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">two</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> ferries, resulting in forecast cost increases and liquidated damages, and the previous need to fabricate a new hull for the second vessel. Accordingly, during 2021, we submitted claims to our customer, and subsequently filed a lawsuit, to extend our project schedules and recover the cost impacts of the design deficiencies. The customer denied all liability. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our forecasts at December 31, 2023 do not reflect potential future benefits, if any, from the favorable resolution of the lawsuit and we can provide no assurance that we will be successful recovering previously incurred costs.</span></p><p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, the projects were in a loss position and the warranty period for the first vessel ends in the second quarter 2024 and the warranty period for the second vessel is anticipated to end in the first quarter 2025. The projects would experience further losses if we incur unanticipated warranty costs on the vessels.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Estimates for 2022</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022,</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> significant changes in estimated margins on projects negatively impacted operating results for our Shipyard Division by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The changes in estimates were associated with the following:</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:6pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Seventy-Vehicle Ferry Project</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022, our operating results were negatively impacted by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from changes in estimates on our seventy-vehicle ferry project, associated primarily with increased materials and subcontracted services costs and duration related costs due to extensions of schedule, including forecast liquidated damages. The impacts were primarily due to equipment issues identified during testing, subcontractor delays and the U.S. Coast Guard&#8217;s determination that the vessel&#8217;s wood consoles, contractually specified by the customer, were required to be replaced or modified with metal consoles.  </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Forty-Vehicle Ferry Projects</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; During 2022, our operating results were negatively impacted by $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from changes in estimates on our second forty-vehicle ferry project, associated primarily with increased subcontracted services and craft labor costs and duration related costs due to extensions of schedule, including forecast liquidated damages. The impacts were primarily due to structural design deficiencies for the vessel (discussed further above), which resulted in deflection issues within the plating of the vessel. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">   </span></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other Operating and Project Matters</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2021, our operations were impacted by Hurricane Ida, which made landfall near Houma, Louisiana as a high-end Category 4 hurricane, causing debris and damage to our buildings and equipment at our Houma Facilities. Our insurance coverages in effect at the time of the storm generally specified coverage amounts for each of our buildings (including contents) and major equipment.  </span></span><span style="font-size:10pt;font-family:Times New Roman;"></span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabrication Division Impacts </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; During 2023 and 2022, we received insurance payments of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, from our insurance carriers associated with interruptions to our operations and damage to buildings and equipment</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Further, in the fourth quarter 2023, we finalized all claims associated with our insurance coverages, and at December 31, 2023, we had total insurance receivables on our Balance Sheet of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, all of which was collected in January 2024. The classification of insurance proceeds within our Statement of Cash Flows is based on our use or intended use of the proceeds. Proceeds used or intended to be used for repairs that are not deemed to be capital in nature, and proceeds associated with interruptions to our operations, are reflected within operating activities. Proceeds used or intended to be used for repairs that are deemed capital in nature, or proceeds in excess of repair costs, are reflected within investing activities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The timing of payments from our insurance carriers often differed from when we incurred the applicable repair and cleanup costs, and accordingly, we accounted for such differences in timing as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">To the extent we incurred repair costs in excess of insurance proceeds received to date, we recorded an insurance receivable when we believed such amounts were probable of recovery under our insurance policies.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">To the extent proceeds received exceeded repair costs incurred to date, we recorded an insurance gain as we did not have an obligation to perform further repair activities. Charges were recorded in subsequent periods to the extent such proceeds received were used for repair activities that were not deemed to be capital in nature. </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Insurance deductibles, clean-up costs and uninsured losses were expensed. </span></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Based on the above, during 2023 and 2022, we recorded gains of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (including $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million related to our business interruption coverage) and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (including $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million related to our business interruption coverage), respectively, related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida. The gains are included in other (income) expense, net on our Statement of Operations and are reflected within our Fabrication Division.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">    </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Shipyard Division Impacts </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In addition to damage to our Houma Facilities, the storm resulted in damage to one of our forty-vehicle ferry projects</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the multi-purpose supply vessels (&#8220;MPSV(s)&#8221;) and associated equipment that were previously in our possession and subject to our MPSV Litigation, and certain bulkheads where the vessels were moored.  During 2023 and 2022, we recorded charges of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, related to actual costs incurred. The charges are included in other (income) expense, net on our Statement of Operations and are reflected within our Shipyard Division. See Note 7 for further discussion of the resolution of our MPSV Litigation.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-15<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574138638464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3. LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment consisted of the following at December 31, 2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:57.5%;"></td>
        <td style="width:1.4%;"></td>
        <td style="width:12.78%;"></td>
        <td style="width:1.34%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.82%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.34%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.82%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Estimated</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Useful Life</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(in Years)</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Land</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,103</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,376</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Buildings</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">25</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">19,232</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">25,584</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Machinery and equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">64,035</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">67,851</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Furniture and fixtures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">762</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">994</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Transportation equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,369</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,361</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Improvements</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">17,277</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23,246</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Construction in progress</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,060</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,881</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total property, plant and equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">107,838</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">127,293</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated depreciation</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">84,693</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">96,139</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property, plant and equipment, net</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23,145</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">31,154</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Depreciation expense for 2023 and 2022 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In February 2024, we sold certain property of our Fabrication Division that was part of our Houma Facilities for</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (net of transaction and other costs). The property sold was classified as an asset held for sale (&#8220;Houma AHFS&#8221;) on our Balance Sheet at December 31, 2023, and its carrying value was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">5.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, which was less than its fair value based on the proceeds from its sale.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leased Facilities and Equipment</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We lease certain office, warehouse and operating facilities under long-term lease arrangements that expire at various dates through </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">October 2027</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, some of which include renewal options ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_a8a89eb0-e986-42d3-855c-14bcaa1d2563;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">one</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">20 years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> At </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, our </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b8306089-f1e0-427d-b2eb-9198d2ff7286;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">lease asset</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_1145cb82-332f-4336-832e-9a7b7c5bd883;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">current lease liability</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_04f8f0bf-472b-4379-b781-04b0610392b1;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">long-term lease liability</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. Our lease obligations include any renewal options that we intend to exercise. </span><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future minimum payments under leases having initial terms of more than twelve months are as follows (in thousands):</span></span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.22%;"></td>
        <td style="width:1.9%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.88%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Minimum<br/>Payments</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2024</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">884</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2025</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">424</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2026</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">76</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2027</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">64</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease payments</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,448</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Less: interest</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">99</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Present value of lease payments </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,349</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">During 2022, we entered into a sublease arrangement with a third-party for the remainder of our corporate office lease, which will partially recover our lease costs for the office for the duration of the lease. In connection therewith, we recorded an impairment charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with the underlying right-of-use asset for the corporate office lease. The impairment is included in other (income) expense, net on our Statement of Operations and is reflected within our Corporate Division.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The discount rate used to determine the present value of our lease payments was based on the interest rate on our LC Facility adjusted for terms similar to that of our leased properties. At December 31, 2023, our weighted-average remaining lease term was approximately </span><span style="font-size:9pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1.9</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> years and the weighted-average discount rate used to derive our lease liability was </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.9</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">.</span></div></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">L</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ease expense for our leased facilities and equipment, which includes lease asset amortization expense and expense for leases with original terms that are twelve months or less, for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. Cash paid for leases for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. Certain of our leases are subject to subleases with third parties. Sublease income for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, and is </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">included in other (income) expense, net on our Statement of Operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During 2022, we sold a purchase option for $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (net of transaction and other costs) that was entered into in connection with a previous acquisition that provided us with a right to buy a leased fabrication and operating facility for a nominal amount. </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">No</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> material gain or loss was recognized on the sale of the purchase option as the net proceeds approximated the carrying value of the underlying right-of-use asset associated with the leased facility. The net proceeds are included in proceeds from sale of property and equipment on our Statement of Cash Flows.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill and Other Intangible Assets</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Goodwill</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; As discussed in Note 1, goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). We perform our annual impairment assessment during the fourth quarter of each year based on balances as of October 1. At October 1, 2023, our Services Division represented our only reporting unit. During 2023, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> indicators of impairment and had no changes to our reporting unit. We performed a qualitative assessment of our goodwill, and determined that it was not more likely than not that the fair value of our reporting unit was less than its carrying value. Accordingly, a quantitative assessment was not deemed necessary.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other Intangible Assets</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangible assets were derived from the estimated fair value of existing underlying customer relationships associated with a previous acquisition and consisted of the following at December 31, 2023 and 2022 (in thousands):</span></span></p><div style="font-size:9pt;font-family:Times New Roman;">
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">996</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">996</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated amortization</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">296</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">154</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets, net</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">700</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">842</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our intangible assets have estimated lives of </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">seven years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and amortization expense for 2023 and 2022 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. Amortization expense is estimated to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of 2024, 2025, 2026, 2027 and 2028.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//360/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480321/958-360-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480321/958-360-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480321/958-360-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574231493520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CREDIT FACILITIES AND DEBT<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">CREDIT FACILITIES AND DEBT</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4. CREDIT FACILITIES AND DEBT</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">LC Facility</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On May </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5, 2023, we amended our LC Facility with Whitney Bank to reduce our letters of credit capacity from $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">20.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, subject to our cash securitization of the letters of credit, and extend the maturity date to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Commitment fees on the unused portion of the LC Facility are </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum and interest on outstanding letters of credit is </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum. At December 31, 2023, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of outstanding letters of credit under the LC Facility. See Note 7 for further discussion of our letters of credit and associated security requirements.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Surety Bonds</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We issue surety bonds in the ordinary course of business to support our projects. At December 31, 2023, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">52.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of outstanding surety bonds, of which</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">45.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million relates to our Ferry Projects for our Shipyard Division and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million relates to our Fabrication Division contracts and certain of our insurance coverages. See Note 7 for further discussion of our surety bonds and related indemnification obligations.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Note Agreement</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the resolution of our MPSV Litigation and the Settlement Agreement, on November 6, 2023, we entered into a promissory note (&#8220;Note Agreement</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8221;) with one of our Sureties (Fidelity &amp; Deposit Company of Maryland (&#8220;FDC&#8221;) and Zurich American Insurance Company (together with FDC, &#8220;Zurich&#8221;)), pursuant to which we will pay Zurich $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">20.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. The Note Agreement bears interest at a fixed rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum commencing on January 1, 2024, with </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">principal and interest payable in </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> equal annual installments</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, beginning on </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2024</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and ending on </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2038</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future annual principal maturities under the Note Agreement are as follows (in thousands): </span></span><span style=""></span></p><div style="font-size:9pt;font-family:Times New Roman;">
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:81.156%;"></td>
        <td style="width:1.92%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.923%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Principal<br/>Maturities</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2024</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,075</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2025</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,108</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2026</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,141</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2027</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,175</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2028</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,210</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Thereafter</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">14,291</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total maturities </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">20,000</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, the estimated present value of the Note Agreement amount was $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">12.7</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million based on an estimated market rate of interest.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Due to the forbearance of interest until January 1, 2024, the effective rate on the Note Agreement is </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.9</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% per annum. Accordingly, we accrued interest expense of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million during 2023 associated with the difference between the effective interest rate and stated interest rate on the Note Agreement.</span></div></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Mortgage Agreement and Restrictive Covenant Agreement</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the receipt of a consent for the Shipyard Transaction from Zurich, we entered into a multiple indebtedness mortgage (&#8220;Mortgage Agreement&#8221;) and a restrictive covenant arrangement (&#8220;Restrictive Covenant Agreement&#8221;) with Zurich to secure our obligations for our MPSV projects and forty-vehicle ferry projects. The Mortgage Agreement encumbers all real estate associated with the Houma Facilities and includes certain covenants and events of default. In connection with the resolution of our MPSV Litigation and Note Agreement entered into with Zurich, the Mortgage Agreement was modified on November 6, 2023, to include a provision requiring that </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">50</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> percent of the net proceeds received by us in excess of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from the sale of any real estate of our Houma Facilities be used to make early payments on the principal balance under the Note Agreement. The Mortgage Agreement will terminate when the obligations and liabilities of Zurich associated with the outstanding surety bonds for the forty-vehicle ferry projects are discharged and the Note Agreement is repaid. The Restrictive Covenant Agreement precluded us from paying dividends or repurchasing shares of our common stock; however, in connection with the Settlement Agreement, the Restrictive Covenant Agreement was terminated. See Note 1 for further discussion of the Shipyard Transaction and Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Insurance Finance Arrangements</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In connection with the renewal of our property and equipment insurance coverages during 2022, and general liability insurance coverages during 2023, we entered into short-term premium finance arrangements (&#8220;Insurance Finance Arrangements&#8221;). The property and equipment arrangement totaled $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million,</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> payable in ten equal monthly installments through March 2023</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, with interest at a fixed rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum. The general liability arrangement totaled $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">payable in eight equal monthly installments through August 2023</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, with interest at a fixed rate of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% per annum. We considered the transactions to be non-cash financing activities, with the initial financed amount reflected within accrued expenses and other liabilities, and a corresponding asset reflected within prepaid expenses and other assets, on our Balance Sheet. During 2023 and 2022, we made principal payments of</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, which have been reflected as a financing activity on our Statement of Cash Flows.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//470/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574231467584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">INCOME TAXES</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5. INCOME TAXES</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income Tax (Expense) Benefit</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of the U.S. federal statutory tax rate to our income tax (expense) benefit for 2023 and 2022, is as follows (in thousands):</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"></td>
        <td style="width:1.1%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.402000000000001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.1%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.402000000000001%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">U.S. statutory rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">21.0</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">21.0</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Increase (decrease) resulting from:</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Permanent differences</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5.1</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State income taxes</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.3</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5.7</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Discrete items</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vesting of common stock</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Change in valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">19.4</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23.1</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Return to provision and other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.8</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income tax (expense) benefit</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
      </table></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Significant components of our income tax (expense) benefit for 2023 and 2022, were as follows (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.923%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.923%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total current</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,933</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">556</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">24</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">166</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,868</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">745</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">41</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income tax (expense) benefit</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">41</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Deferred Taxes</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Significant components of our deferred tax assets and liabilities at December 31, 2023 and 2022, were as follows (in thousands):</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.923%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.923%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred tax assets</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Leases</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">144</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">221</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Employee benefits</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,499</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,465</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued losses on uncompleted contracts</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">77</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,076</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Stock based compensation expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">373</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">351</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Debt interest</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">516</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">-</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal net operating losses</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">28,413</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">22,444</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State net operating losses</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,407</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,493</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">R&amp;D and other tax credits</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,037</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,013</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">242</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">481</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred tax assets</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">35,708</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">31,544</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred tax liabilities</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">564</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,051</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid insurance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">280</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">497</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred tax liabilities</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">844</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,548</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net deferred tax assets</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">34,864</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">29,996</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">34,927</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,100</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net deferred taxes </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">63</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">104</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Amounts are included in other noncurrent liabilities on our Balance Sheet</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">.</span></div></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023 and 2022, we had total DTAs of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">35.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">31.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively (including U.S. federal net operating losses (&#8220;NOL(s)&#8221;) DTAs of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">28.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">22.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively). On a periodic and ongoing basis, we evaluate our DTAs (including our NOL DTAs) and assess the appropriateness of our valuation allowance(s) (&#8220;VA(s)&#8221;). In assessing the need for a VA, we consider both positive and negative evidence related to the likelihood of realizing our DTAs. If, based upon the available evidence, our assessment indicates that it is more likely than not that some or all of the DTAs will not be realized, we record a VA. Our assessments include, among other things, the amount of taxable temporary differences that will result in future taxable income, the value and quality of our backlog, evaluations of existing and anticipated market conditions, analysis of recent and historical operating results (including cumulative losses over multiple periods) and projections of future results and strategic plans, as well as asset expiration dates. As a result of our assessment and due to cumulative losses for the three years ended December 31, 2023, we believe the negative evidence outweighs the positive evidence with respect to our ability to realize our DTAs, and accordingly, at December 31, 2023 and 2022, we had VAs of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">34.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">30.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, offsetting our total DTAs.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, we had gross U.S. federal NOL carryforwards (excluding VAs) of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">135.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, of which $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">42.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million will expire in</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> 2037</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> with the </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">remaining U.S. federal NOL carryforwards eligible to be carried forward indefinitely, subject to an </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">80</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% limitation on taxable income in each year.</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> At December 31, 2023, we had gross state NOL carryforwards (excluding VAs) of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">45.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, which will expire fro</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">m 2035 through 2041.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Uncertain Tax Positions</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. At December 31, 2023 and 2022, we had no material reserves for uncertain tax positions. Tax returns subject to examination by the U.S. Internal Revenue Service are open for years after </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2019.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//740/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-21<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482526/740-270-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574231467584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>RETIREMENT AND LONG-TERM INCENTIVE PLANS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract', window );"><strong>Share Based Payments And Retirement Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock', window );">RETIREMENT AND LONG-TERM INCENTIVE PLANS</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6. RETIREMENT AND LONG-TERM INCENTIVE PLANS</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Defined Contribution Plan</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We sponsor a defined contribution plan for eligible employees that is qualified under Section 401(k) of the Internal Revenue Code, which includes voluntary employee pre-tax contributions and Company-matching contributions, with potential additional discretionary contributions determined by our Board of Directors (&#8220;Board&#8221;). During 2023 and 2022, we contributed </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, to the plan.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Long-Term Incentive Plans</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Under our long-term incentive plans (&#8220;Incentive Plans&#8221;), the Compensation Committee of our Board may grant cash-based and equity-based awards to eligible employees and non-employee directors, including restricted stock unit (&#8220;RSU&#8221;) awards (both time-based and performance-based), stock option awards and cash-based performance awards. The Compensation Committee determines the amount of each award, as well as the terms, conditions, performance measures and other provisions of the award. Under our Incentive Plans, the maximum number of shares that may be granted to any one officer or employee during any single calendar year is </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">300,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. At December 31, 2023, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,146,746</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> authorized shares available for future issuance under our Incentive Plans.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">RSU Awards </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">An RSU represents the right to receive one share of our common stock upon vesting, or the equivalent cash value on the vesting date if the award is cash-settled. RSUs are subject to transfer restrictions, forfeiture provisions and other terms and conditions of the Incentive Plans and applicable award agreements. Forfeitures are recognized as they occur.</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Time-based RSU Awards</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Outstanding time-based RSU awards to our non-employee directors and employees have a one-year or </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three-year</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, graded vesting period. The fair value for these awards was determined based upon the closing price of our stock on the date of grant applied to the total number of units granted. The fair value is expensed over the applicable vesting period on a straight-line basis.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Performance-based RSU Awards</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Outstanding performance-based RSU awards to our employees have a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three-year</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> graded vesting period. These awards provide that the number of shares of common stock ultimately issued will be between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">200</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the target award based on the achievement of performance targets attributable to the year in which the awards are made, up to the maximum per person limit, with any excess shares earned payable in cash. The fair value for these awards was determined based upon the closing price of our stock on the date of grant applied to the total number of units anticipated to be granted based on the performance targets achieved. This fair value is expensed over the applicable vesting period using the graded vesting method. As a result of the performance targets achieved for 2021, one award recipient&#8217;s performance-based RSU awards were subject to partial cash-settlement (&#8220;Cash-Settled RSUs&#8221;) as described above. Accordingly, we account for this portion of the awards as liability-classified awards, with changes in the fair value of the awards reflected within general and administrative expense on our Statement of Operations over the vesting period. Compensation expense for our Cash-Settled RSUs was not significant for 2023 and was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for 2022. During 2023 and 2022, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, was paid related to our Cash-Settled RSUs.</span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A summary of activity for our RSU awards (excluding Cash-Settled RSUs) for 2023 and 2022 is as follows:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:30.586%;"></td>
        <td style="width:1.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.163%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.66%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.703%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.163%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.66%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.703%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Number<br/>of Shares</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Weighted-<br/>Average<br/>Grant-Date<br/>Fair Value<br/>Per Share</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Number<br/>of Shares</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Weighted-<br/>Average<br/>Grant-Date<br/>Fair Value<br/>Per Share</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">RSUs, beginning of period</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">838,267</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.34</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">842,558</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.47</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Granted</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">550,980</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.47</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">463,600</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.24</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vested</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">443,106</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.21</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">403,559</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.46</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Forfeited</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">64,332</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.49</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">RSUs, end of period</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">946,141</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.89</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">838,267</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.34</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Compensation expense for our RSU awards was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for 2023 and 2022, respectively, and is included in general and administrative expense and cost of revenue, as applicable, on our Statement of Operations. At December 31, 2023, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of unrecognized compensation expense related to our RSU awards. This cost is expected to be recognized over a weighted-average period of </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1.5</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> y</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ears. The total fair value of RSU awards granted during 2023 and 2022 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, and the total fair value of RSU awards that vested during 2023 and 2022 was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. The income tax benefit (expense) associated with our share-based compensation arrangements was not significant for 2023 or 2022.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Stock Option Awards and Cash-based Performance Awards &#8211; </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> outstanding stock option awards or cash-based performance awards and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> such awards were made during 2023 or 2022.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Retirement Plan And Stock Incentive Plans Disclosure [Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Payments and Retirement Disclosure [Abstract]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574296242704">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>COMMITMENTS AND CONTINGENCIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">COMMITMENTS AND CONTINGENCIES</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7. COMMITMENTS AND CONTINGENCIES</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Routine Legal Proceedings</span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We are subject to various routine legal proceedings in the normal conduct of our business, primarily involving commercial disputes and claims, workers&#8217; compensation claims, and claims for personal injury under general maritime laws of the U.S. and the Jones Act. While the outcome of these legal proceedings cannot be predicted with certainty, we believe that the outcome of any such proceedings, even if determined adversely, would not have a material adverse effect on our financial position, results of operations or liquidity.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Resolution of MPSV Litigation</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On March 19, 2018, our subsidiary, Gulf Island Shipyards, LLC (&#8220;GIS&#8221;), received termination notices from its customer, Hornbeck Offshore Services, LLC (&#8220;Hornbeck&#8221;), of the contracts for the construction of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">two</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> MPSVs. GIS disputed the purported terminations and disagreed with Hornbeck&#8217;s reasons for such terminations. In connection with such purported terminations, Hornbeck also made claims against the performance bonds issued by Zurich in connection with the construction of the MPSVs, for which the face amount of the bonds totaled $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">50.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (&#8220;Performance Bonds&#8221;). On October 2, 2018, GIS filed a lawsuit against Hornbeck to enforce its rights and remedies under the applicable construction contracts for the two MPSVs. The lawsuit was filed in the Twenty-Second Judicial District Court for the Parish of St. Tammany, State of Louisiana and was styled Gulf Island Shipyards, LLC v. Hornbeck Offshore Services, LLC, bearing docket number 2018-14861 (&#8220;MPSV Litigation&#8221;). Hornbeck subsequently asserted counterclaims against GIS and Zurich seeking damages.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On October 4, 2023, the MPSV Litigation was dismissed in full with prejudice at the request of the parties after the parties reached an agreement in principle. In addition, on November 6, 2023, GIS and the Company entered into an agreement (&#8220;Settlement Agreement&#8221;) with Zurich pursuant to which Zurich released GIS and the Company from all of their obligations under the Performance Bonds and the associated general indemnity agreements relating to the Performance Bonds, and we agreed to release possession of the MPSVs to Zurich, which occurred in the fourth quarter 2023. Further, we entered into the Note Agreement. See Note 4 for further discussion of the Note Agreement.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As a result of the resolution of the MPSV Litigation, during the third quarter 2023, we recorded a charge of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, consisting of (i) a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">12.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million non-cash charge associated with the write-off of a noncurrent net contract asset related to the MPSV construction contracts, and (ii) a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">20.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million charge associated with recording a liability resulting from the Settlement Agreement and Note Agreement. The charge was reflected as a reduction to previously recognized revenue on the MPSV construction contracts, resulting in a negative revenue amount for the Shipyard Division for 2023, and is included in the changes in noncurrent assets and liabilities, net on our Statement of Cash Flows. The liability was replaced with the Note Agreement in the fourth quarter 2023 and is reflected as current and long-term debt on our Balance Sheet at December 31, 2023.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Insurance</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We maintain insurance coverage for various aspects of our business and operations. However, we may be exposed to future losses due to coverage limitations and our use of deductibles and self-insured retentions for our exposures related to property and equipment damage, builder&#8217;s risk, third-party liability and workers&#8217; compensation and USL&amp;H claims. In connection with our insurance coverage renewal for our property and equipment during 2023, we determined that the benefits of maintaining insurance coverage for our property and equipment were limited due to high premium costs and deductibles and increased coverage limitations. Accordingly, we did not renew all of our property and equipment coverage and are now generally self-insured for exposures resulting from any future damage to our property and equipment.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> To the extent we have insurance coverage, we do not have an offset right for liabilities in excess of any deductibles and self-insured retentions. Accordingly, we have recorded a liability for estimated amounts in excess of our deductibles and retentions, and have recorded a corresponding asset related to estimated insurance recoveries, on our Balance Sheet. Further, to the extent we are self-insured, reserves are recorded based upon our estimates, with input from legal and insurance advisors. Changes in assumptions, as well as changes in actual experience, could cause these estimates to change. See Note 2 for discussion of the costs incurred associated with damage caused by Hurricanes Ida.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Letters of Credit and Surety Bonds</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We obtain letters of credit under our LC Facility or surety bonds from financial institutions to provide to our customers in order to secure advance payments or guarantee performance under our contracts, or in lieu of retention being withheld on our contracts. Letters of credit under our LC Facility are subject to cash securitization of the full amount of the outstanding letters of credit. In the event of non-performance under a contract, our cash securitization with respect to the letter of credit supporting such contract would become the property of Whitney Bank. With respect to surety bonds, payments by a Surety pursuant to a bond in the event of non-performance are subject to reimbursement to such Surety by us under a general indemnity agreement relating to such bond. Such indemnification obligations may include the face amount of the surety bond, or portions thereof, as well as other reimbursable items such as interest and certain investigative expenses and legal fees of the Surety. Such indemnification obligations would require us to use our cash, cash equivalents or short-term investments, and we may not have sufficient liquidity to satisfy such indemnification obligations. When a contract is complete, the contingent obligation terminates, and letters of credit or surety bonds are returned. See Note 4 for further discussion of our LC Facility and surety bonds.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Environmental Matters</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our operations are subject to extensive and changing U.S. federal, state and local laws and regulations, as well as the laws of other countries, that establish health and environmental quality standards. These standards, among others, relate to air and water pollutants and the management and disposal of hazardous substances and wastes. We are exposed to potential liability for personal injury or property damage caused by any release, spill, exposure or other accident involving such pollutants, substances or wastes. In connection with the historical operation of our facilities, including those associated with acquired operations, substances which currently are or might be considered hazardous were used or disposed of at some sites that will or may require us to make expenditures for remediation. We believe we are in compliance, in all material respects, with environmental laws and regulations and maintain insurance coverage to mitigate exposure to environmental liabilities. We do not believe any environmental matters will have a material adverse effect on our financial condition, results of operations or cash flow.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leases</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We maintain operating leases for our corporate office and certain operating facilities and equipment. See Note 3 for further discussion of our leases.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482648/440-10-50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//450/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480327/954-440-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482648/440-10-50-4<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//440/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574142545520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_IncomeLossPerShareAndShareholdersEquityAbstract', window );"><strong>Income (Loss) Per Share And Shareholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_IncomeLossPerShareAndShareholdersEquityTextBlock', window );">INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8. INCOME (LOSS) PER SHARE AND SHAREHOLDERS&#8217; EQUITY</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income (Loss) Per Share</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table presents the computation of basic and diluted loss per share for 2023 and 2022 (in thousands, except per share data):</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:47.57%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:22.256%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:22.256%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">24,402</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,352</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Weighted average shares</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">16,193</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">15,840</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic and diluted loss per share</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.51</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.21</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table></div><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Shareholders&#8217; Equity</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On December 1, 2023, our Board approved a share repurchase program (&#8220;Share Repurchase Program&#8221;) authorizing the repurchase of up to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">5.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of our outstanding common stock, effective from December 15, 2023 through </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 15, 2024</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. The timing and amount of any share repurchases is at the discretion of management and may be made from time to time through transactions in the open market, in privately negotiated transactions or by other means in accordance with applicable laws. The Share Repurchase Program does not obligate us to repurchase any shares of common stock and may be modified, increased, suspended or terminated at the discretion of our Board. During 2023, we repurchased </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">29,578</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares of our common stock for $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, and at December 31, 2023, we had remaining authorization to purchase $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million under the Share Repurchase Program.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_IncomeLossPerShareAndShareholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income (Loss) Per Share And Shareholders' Equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_IncomeLossPerShareAndShareholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_IncomeLossPerShareAndShareholdersEquityTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income (Loss) Per Share And Shareholders' Equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_IncomeLossPerShareAndShareholdersEquityTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574143246192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>OPERATING SEGMENTS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">OPERATING SEGMENTS</a></td>
<td class="text"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9. OPERATING SEGMENTS</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We currently operate and manage our business through </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">three</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> operating divisions (&#8220;Services&#8221;, &#8220;Fabrication&#8221; and &#8220;Shipyard&#8221;) and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">one</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> non-operating division (&#8220;Corporate&#8221;), which represent our reportable segments. Our three operating divisions and Corporate Division are discussed below.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Services Division</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Services Division provides maintenance, repair, construction, scaffolding, coatings, welding enclosures and other specialty services on offshore platforms and inland structures and at industrial facilities; provides services required to connect production equipment and service modules and equipment on offshore platforms; provides project management and commissioning services; provides industrial staffing services; and performs municipal and drainage projects, including pump stations, levee reinforcement, bulkheads and other public works. Our services activities are managed from our various Facilities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Fabrication Division</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our Fabrication Division fabricates modules, skids and piping systems for onshore refining, petrochemical, LNG and industrial facilities and offshore facilities; fabricates foundations, secondary steel components and support structures for alternative energy developments and coastal mooring facilities; fabricates offshore production platforms and associated structures, including jacket foundations, piles and topsides for fixed production and utility platforms, as well as hulls and topsides for floating production and utility platforms; and fabricates other complex steel structures and components. Our fabrication activities are performed at our Houma Facilities.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Shipyard Division </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; Our Shipyard Division previously fabricated newbuild marine vessels and provided marine repair and maintenance services. However, in the second quarter 2021, we completed the Shipyard Transaction. The Shipyard Transaction excluded the contracts and related obligations for our Ferry Projects that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. Construction of the Ferry Projects was performed at our Houma Facilities and the wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. Final completion of the wind down will occur upon completion of the warranty periods for the Ferry Projects, the last of which is anticipated to occur in the first quarter 2025. At December 31, 2023 and 2022, the net operating liabilities on our Balance Sheet associated with our Shipyard Division operations totaled $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. See Note 1 for further discussion of the Shipyard Transaction, Note 2 for further discussion of our Ferry Projects and Note 7 for further discussion of the resolution of our MPSV Litigation.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Corporate Division and Allocations</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our Corporate Division includes costs that do not directly relate to our operating divisions. Such costs include, but are not limited to, costs of maintaining our corporate office, executive management salaries and incentives, board of directors&#8217; fees, certain insurance costs and costs associated with overall corporate governance and reporting requirements for a publicly traded company. Shared resources and costs that benefit more than one operating division are allocated amongst the operating divisions based on each operating division&#8217;s estimated share of the benefit received. Such costs include, but are not limited to, human resources, insurance, information technology, accounting, business development and certain division leadership.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Segment Results</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; We generally evaluate the performance of, and allocate resources to, our divisions based upon gross profit or loss and operating income or loss. Segment assets are comprised of all assets attributable to each division. Intersegment revenues are priced at the estimated fair value of work performed. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Summarized financial information for our segments as of and for the two-year period ended December 31, 2023, is as follows (in thousands):</span></span></p><div style="font-size:9pt;font-family:Times New Roman;">
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:37.763%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year Ended December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Corporate</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue (eliminations) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">93,548</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">89,046</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,110</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">151,067</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">13,783</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">10,178</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">35,862</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">11,901</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating income (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">10,929</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">10,558</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">39,374</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,996</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">25,883</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation and amortization expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,926</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,249</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">291</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,466</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capital expenditures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">544</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,233</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">99</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,876</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">32,191</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">42,368</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,553</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">52,316</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">128,428</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:37.763%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year Ended December 31, 2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Corporate</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue (eliminations)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">87,022</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">48,299</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">672</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">142,320</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">11,227</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">274</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,058</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,895</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating income (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">8,124</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,874</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,554</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">8,859</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,415</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation and amortization expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,496</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,343</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">259</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,098</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capital expenditures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,326</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">633</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">127</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,086</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">28,016</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">40,531</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">16,330</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">49,989</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">134,866</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue for 2023 includes a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million resulting from the resolution of our MPSV Litigation for our Shipyard Division. Gross profit (loss) and operating income (loss) for 2023 includes a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million resulting from the resolution of our MPSV Litigation and project charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division. Operating income (loss) for 2023 also includes gains </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with damage previously caused by Hurricane Ida for our Shipyard Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 7 for further discussion of the resolution of our MPSV Litigation.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Gross profit (loss) and operating income (loss) for 2022 includes project charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division. Operating income (loss) for 2022 also includes gains of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with damage previously caused by Hurricane Ida for our Shipyard Division, an impairment charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with the underlying right-of-use asset for our corporate office lease for our Corporate Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 3 for further discussion of our corporate office lease asset impairment.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Cash and short-term investments are reported within our Corporate Division. </span></div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//280/tableOfContent<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-26<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 34<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-34<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-21<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-21<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574296242704">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUBSEQUENT EVENTS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsAbstract', window );"><strong>Subsequent Events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">SUBSEQUENT EVENTS</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10. SUBSEQUENT EVENTS</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In February 2024, we sold our Houma AHFS for</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million (net of transaction and other costs). See Note 3 for further discussion of our Houma AHFS.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//855/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483399/855-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574137773024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NatureOfOperationsPolicyTextBlock', window );">Nature of Operations</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Nature of Operations</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Gulf Island Fabrication, Inc. (together with its subsidiaries, &#8220;Gulf Island,&#8221; &#8220;the Company,&#8221; &#8220;we,&#8221; &#8220;us&#8221; and &#8220;our&#8221;) is a leading fabricator of complex steel structures and modules and a provider of specialty services, including project management, hookup, commissioning, repair, maintenance, scaffolding, coatings, welding enclosures, civil construction and staffing services to the industrial and energy sectors. Our customers include U.S. and, to a lesser extent, international energy producers; refining, petrochemical, LNG, industrial and power operators; and EPC companies. We currently operate and manage our business through </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">three</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> operating divisions (&#8220;Services&#8221;, &#8220;Fabrication&#8221; and &#8220;Shipyard&#8221;) and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">one</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> non-operating division (&#8220;Corporate&#8221;), which represent our reportable segments. Our corporate headquarters is located in The Woodlands, Texas and our primary operating facilities are located in Houma, Louisiana (&#8220;Houma Facilities&#8221;). See Note 9 for further discussion of our reportable segments.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In the second quarter 2021, we sold our Shipyard Division operating assets and certain construction contracts (&#8220;Shipyard Transaction&#8221;). The Shipyard Transaction excluded the contracts and related obligations for our seventy-vehicle ferry and two forty-vehicle ferry projects (collectively, &#8220;Ferry Projects&#8221;) that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. The wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. See Note 2 for further discussion of our Ferry Projects, Note 7 for further discussion of the resolution of our MPSV Litigation and Note 9 for further discussion of the wind down of our Shipyard Division operations.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basis of Presentation</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying Consolidated Financial Statements (&#8220;Financial Statements&#8221;) reflect all wholly owned subsidiaries. Intercompany balances and transactions have been eliminated in consolidation. The Financial Statements have been prepared in accordance with the rules and regulations of the U.S. Securities and Exchange Commission (the &#8220;SEC&#8221;) and accounting principles generally accepted in the U.S. (&#8220;GAAP&#8221;).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_OperatingCyclePolicyPolicyTextBlock', window );">Operating Cycle</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Operating Cycle</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The duration of our contracts vary, but may extend beyond twelve months from the date of contract award. Consistent with industry practice, assets and liabilities have been classified as current under the operating cycle concept whereby all contract-related items are classified as current regardless of whether cash will be received or paid within a twelve-month period. Assets and liabilities classified as current, which may not be received or paid within the next twelve months, include contract retainage, contract assets and contract liabilities. Variations from normal contract terms may result in the classification of assets and liabilities as long-term.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Use of Estimates</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preparation of our Financial Statements in conformity with GAAP requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenue and expenses and related disclosures of contingent assets and liabilities. We believe our most significant estimates and judgments are associated with:</span></p><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">revenue recognition for our long-term contracts, including application of the percentage-of-completion (&#8220;POC&#8221;) method, estimating costs to complete each contract and the recognition of incentives, unapproved change orders, claims (including amounts arising from disputes with customers) and liquidated damages;</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">fair value and recoverability assessments that must be periodically performed with respect to long-lived tangible assets, goodwill and other intangible assets; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">determination of deferred income tax assets, liabilities and related valuation allowances;</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">reserves for bad debts and credit losses; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">liabilities related to self-insurance programs; </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">determination of the fair-value of our long-term debt; and</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">the impacts of volatile oil and gas prices and macroeconomic conditions on our business, estimates and judgments as discussed further below.</span></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">If the underlying estimates and assumptions upon which our Financial Statements are based change in the future, actual amounts may differ materially from those included in the Financial Statements.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Oil and Gas Price Volatility and Macroeconomic Conditions </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; For over a decade, prices of oil and gas have experienced significant volatility, including depressed prices over extended periods, which negatively impacted our end markets and operating results. Beginning in 2020, the global coronavirus pandemic (&#8220;COVID-19&#8221;) added another layer of pressure and uncertainty on oil and gas prices (with oil prices reaching a twenty-year low and gas prices reaching a four-year low in 2020), which further negatively impacted certain of our end markets through the first quarter 2022. This volatility in oil and gas prices was compounded by Russia&#8217;s invasion of Ukraine in February 2022 (and the related European energy crisis), and the U.S. and other countries actions in response, as well as continued inflationary pressures, resulting in elevated energy prices (with oil prices reaching an eight-year high and gas prices reaching a fourteen-year high in 2022), which positively impacted certain of our end markets. While oil and gas prices declined in 2023, prices have somewhat stabilized, but the duration of such stability is uncertain and difficult to predict, particularly in light of geopolitical turmoil and uncertainty.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In addition, global economic factors that are beyond our control, have and could continue to impact our operations, including, but are not limited to, labor constraints, supply chain disruptions, inflationary pressures, economic slowdowns and recessions, natural disasters, public health crises, and geopolitical conflicts.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The ultimate business and financial impacts of oil and gas price volatility and macroeconomic conditions on our business and results of operations continues to be uncertain, but the impacts have included, or may continue to include, among other things, reduced bidding activity; suspension or termination of backlog; deterioration of customer financial condition; and unanticipated project costs and schedule delays due to supply chain disruptions, labor and material price increases, lower labor productivity, increased employee and contractor absenteeism and turnover, craft labor hiring challenges, increased safety incidents, lack of performance by subcontractors and suppliers, and contract disputes. We continue to monitor the impacts of oil and gas price volatility and macroeconomic conditions on our operations, and our estimates in future periods will be revised for any events and changes in circumstances arising after the date of this Report.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Income (Loss) Per Share</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income (Loss) Per Share</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Basic income (loss) per share is calculated by dividing net income or loss by the weighted average number of common shares outstanding for the period. Diluted income (loss) per share reflects the assumed conversion of dilutive securities in periods in which income is reported. See Note 8 for calculations of our basic and diluted income (loss) per share.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock', window );">Cash Equivalents and Short-term Investments</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Cash Equivalents and Short-term Investments</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Cash Equivalents </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We consider investments with original maturities of three months or less when purchased to be cash equivalents. We hold substantially all of our cash deposits with Hancock Whitney Bank (&#8220;Whitney Bank&#8221;).</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Restricted Cash </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; At December 31, 2023 and 2022, we had </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, of restricted cash as security for letters of credit issued under our letter of credit facility (&#8220;LC Facility&#8221;) with Whitney Bank. Our restricted cash is held in an interest-bearing money market account with Whitney Bank. The classification of the restricted cash as current and noncurrent is determined by the contractual maturity dates of the letters of credit being secured, with letters of credit having </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">maturity dates of twelve months or less from the balance sheet date classified as current</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, and letters of credit having </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">maturity dates of longer than twelve months from the balance sheet date classified as noncurrent</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. See Note 4 for further discussion of our letters of credit and associated security requirements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">  </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Short-term Investments </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; We consider investments with original maturities of more than three months but less than twelve months to be short-term investments. At December 31, 2023 and 2022, our short-term investments included U.S. Treasuries with original maturities of approximately four to six months. We intend to hold these investments until maturity and it is not more likely than not that we will be required to sell the investments prior to their maturity. The investments are stated at amortized costs, which approximates fair value due to their near-term maturities. All short-term investments are traded on active markets with quoted prices and represent Level 1 fair value measurements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">   </span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventory</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventory is recorded at the lower of cost or net realizable value determined using the first-in-first-out basis. The cost of inventory includes acquisition costs, production or conversion costs, and other costs incurred to bring the inventory to a current location and condition. Net realizable value is our estimated selling price in the normal course of business, less reasonably predictable costs of completion, disposal and transportation. An allowance for excess or inactive inventory is recorded based on an analysis that considers current inventory levels, historical usage patterns, estimates of future sales and salvage value.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy', window );">Allowance for Doubtful Accounts and Credit Losses</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Allowance for Doubtful Accounts and Credit Losses</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As further discussed under &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">New Accounting Standards&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> below, we adopted the new accounting standard for measuring credit losses effective January 1, 2023. In the normal course of business, we extend credit to our customers on a short-term basis and contract receivables are generally not collateralized; however, we typically have the right to place liens on our projects in the event of nonpayment by our customers. We provide an allowance for credit losses and routinely review individual contract receivable balances and other financial assets for collectability and make provisions for probable uncollectible amounts as necessary. Among the factors considered in our review are the financial condition of our customer and its access to financing, underlying disputes with the customer, the age and value of the receivable balance, company-specific credit ratings, historical company-specific uncollectable amounts and economic conditions in general. See Note 2 for further discussion of our allowance for doubtful accounts and credit losses.</span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Stock-Based Compensation</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Stock-Based Compensation</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Awards under our stock-based compensation plans are calculated using a fair value-based measurement method. Depending on the terms of the award, we use the straight-line and graded vesting methods to recognize share-based compensation expense over the requisite service period of the award. We recognize the excess tax benefit or tax deficiency resulting from the difference between the deduction we receive for tax purposes and the stock-based compensation expense we recognize for financial reporting purposes created when common stock vests, as an income tax benefit or expense on our Consolidated Statement of Operations (&#8220;Statement of Operations&#8221;). Tax payments made on behalf of employees to taxing authorities in order to satisfy employee income tax withholding obligations from the vesting of shares under our stock-based compensation plans are classified as a financing activity on our Consolidated Statement of Cash Flows (&#8220;Statement of Cash Flows&#8221;). See Note 6 for further discussion of our stock-based and other compensation plans.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_AssetsHeldForSalePolicyTextBlock', window );">Assets Held for Sale</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Assets Held for Sale</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Assets held for sale </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">are measured at the lower of their carrying amount or fair value less cost to sell. See Note 3 for further discussion of our assets held for sale.</span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock', window );">Depreciation and Amortization Expense</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Depreciation and Amortization Expense</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment are depreciated on a straight-line basis over estimated useful lives ranging from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_0afe6cb2-44da-43fa-ad5a-e2651f8bd43e;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">three</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">25 years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Ordinary maintenance and repairs, which do not extend the physical or economic lives of the plant or equipment, are charged to expense as incurred. Intangible assets are amortized on a straight-line basis over seven years and amortization expense is reflected within general and administrative expense on our Statement of Operations. See Note 3 for further discussion of our property, plant and equipment and intangible assets.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Long-Lived Assets</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Long-Lived Assets</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Goodwill </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent any indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). Our Services Division represents our only reporting unit with goodwill. We perform our annual impairment assessment during the fourth quarter of each year based upon balances as of October 1. In evaluating goodwill for impairment, we have the option to first assess qualitative factors to determine whether it is more likely than not that the fair value of our reporting unit is greater than its carrying value. If we determine that it is more likely than not that the carrying value of the reporting unit is greater than its fair value, we perform a quantitative impairment test by calculating the fair value of the reporting unit and comparing it to the carrying value of the reporting unit, and we recognize an impairment charge to the extent its carrying value exceeds its fair value. To determine the fair value of our reporting unit and test for impairment, we utilize an income approach (discounted cash flow method) as we believe this is the most direct approach to incorporate the specific economic attributes and risk profile of our reporting unit into our valuation model. If, based on future assessments, our goodwill is deemed to be impaired, the impairment would result in a charge to our operating results in the period of impairment. See Note 3 for further discussion of our annual goodwill impairment assessment.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other Long-Lived Assets </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Our property, plant and equipment, lease assets (included within other noncurrent assets) and finite-lived intangible assets are reviewed for impairment when events or changes in circumstances indicate that the carrying amount may not be recoverable. If a recoverability assessment is required, we compare the estimated future undiscounted cash flow associated with the asset or asset group to its carrying amount to determine if an impairment exists. An asset group constitutes the minimum level for which identifiable cash flows are principally independent of the cash flows of other assets or asset groups. An impairment loss is measured by comparing the fair value of the asset or asset group to its carrying amount and the excess of the carrying amount of the asset or asset group over its fair value is recorded as an impairment charge. Fair value is determined based on discounted cash flows, appraised values or third-party indications of value, as appropriate. We had no indicators of impairment during 2023. See Note 3 for discussion of our corporate office lease impairment during 2022.</span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeasesPolicyTextBlock', window );">Leases</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Leases</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">We record a right-of-use asset and an offsetting lease liability on our Consolidated Balance Sheet (&#8220;Balance Sheet&#8221;) equal to the present value of our lease payments for leases with an original term of longer than twelve months. We do not record an asset or liability for leases with an original term of twelve months or less and we do not separate lease and non-lease components for our leases. Our lease assets are reflected within other noncurrent assets, and the current and noncurrent portions of our lease liabilities are reflected within accrued expenses and other liabilities, and other noncurrent liabilities, respectively, on our Balance Sheet. For leases with escalations over the life of the lease, we recognize expense on a straight-line basis. See Note 3 for further discussion of our lease assets and liabilities.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementPolicyPolicyTextBlock', window );">Fair Value Measurements</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair Value Measurements</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Fair value determinations for financial assets and liabilities are based on the particular facts and circumstances. Financial instruments are required to be categorized within a valuation hierarchy based upon the lowest level of input that is significant to the fair value measurement.  The three levels of the valuation hierarchy are as follows:</span></p><div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 1 &#8211; inputs are based upon quoted prices for identical instruments traded in active markets.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 2 &#8211; inputs are based upon quoted prices for similar instruments in active markets and model-based valuation techniques for which all significant assumptions are observable in the market.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Level 3 &#8211; inputs are based upon model-based valuation techniques for which significant assumptions are generally not observable in the market and typically reflect estimates and assumptions that we believe market participants would use in pricing the asset or liability. These include discounted cash flow models and similar valuation techniques.</span></div></div><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The carrying amounts of our financial instruments, including cash and cash equivalents, short-term investments, accounts receivable and accounts payable approximate their fair values. Our fair value assessments for determining the impairments of inventory, assets held for sale, goodwill and long-lived assets, are non-recurring fair value measurements that fall within Level 3 of the fair value hierarchy. Our fair value assessments for long-term debt are recurring fair value measurements that fall within Level 2 of the fair value hierarchy, and are determined using various methods, including quoted prices for identical or similar securities in both active and inactive markets. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">See Note 3 for further discussion of our assets held for sale and Note 4 for further discussion of our long-term debt.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue Recognition</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">General</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Our revenue is derived from customer contracts and agreements that are awarded on a competitively bid and negotiated basis using a range of contracting options, including fixed-price, unit-rate, time and materials (&#8220;T&amp;M&#8221;) and cost-reimbursable, or a combination thereof. Our contracts primarily relate to the fabrication of steel structures and modules, and certain service arrangements. We recognize revenue from our contracts in accordance with Accounting Standards Update (&#8220;ASU&#8221;) 2014-09, Topic 606 </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Revenue from Contracts with Customers&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> (&#8220;Topic 606&#8221;).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Topic 606 requires entities to recognize revenue in a way that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the entity expects to be entitled in exchange for those goods or services. Additionally, provisions of Topic 606 specify which goods and services are distinct and represent separate performance obligations (representing the unit of account in Topic 606) within a contract and which goods and services (which could include multiple contracts or agreements) should be aggregated. In general, a performance obligation is a contractual obligation to construct and/or transfer a distinct good or service to a customer. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Revenue for performance obligations satisfied over time are recognized as the work progresses. Revenue for performance obligations that do not meet the criteria for over time recognition are recognized at a point-in-time when a performance obligation is complete and a customer has obtained control of a promised asset.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Long-term Contracts Satisfied Over Time </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Revenue for our long-term contracts is recognized using the POC method based on contract costs incurred to date compared to total estimated contract costs (an input method). Fixed-price contracts, or contracts with a more significant fixed-price component, generally provide us with greater control over project schedule and the timing of when work is performed and costs are incurred, and accordingly, when revenue is recognized. Unit-rate, T&amp;M and cost-reimbursable contracts generally have more variability in the scope of work and provide our customers with greater influence over the timing of when we perform our work, and accordingly, such contracts often result in less predictability with respect to the timing of when revenue is recognized. Contract costs include direct costs, such as materials and labor, and indirect costs attributable to contract activity. Material costs that are significant to a contract and do not reflect an accurate measure of project completion are excluded from the determination of our contract progress. Revenue for such materials is only recognized to the extent of costs incurred. Revenue and gross profit or loss for contracts accounted for using the POC method can be significantly affected by changes in estimated cost to complete such contracts. Significant estimates impacting the cost to complete a contract include: forecast costs of engineering, materials, equipment and subcontracts; forecast costs of labor and labor productivity; schedule durations, including subcontractor and supplier progress; contract disputes, including claims; achievement of contractual performance requirements; and contingency, among others. Although our customers retain the right and ability to change, modify or discontinue further work at any stage of a contract, in the event our customers discontinue work, they are required to compensate us for the work performed to date. The cumulative impact of revisions in total cost estimates during the progress of work is reflected in the period in which these changes become known, including, to the extent required, the reversal of profit recognized in prior periods and the recognition of losses expected to be incurred on contracts. Due to the various estimates inherent in our contract accounting, actual results could differ from those estimates, which could result in material changes to our Financial Statements and related disclosures. See Note 2 for further discussion of projects with significant changes in estimated margins during 2023 and 2022.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Short-term Contracts and Contracts Satisfied at a Point In Time &#8211;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Revenue for our short-term contracts (which includes revenue associated with our master services arrangements) and contracts that do not satisfy the criteria for revenue recognition over time is recognized when the work is performed or when control of the asset is transferred, the related costs are incurred and collection is reasonably assured.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Variable Consideration</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Revenue and gross profit or loss for contracts can be significantly affected by variable consideration, which can be in the form of unapproved change orders, claims (including amounts arising from disputes with customers), incentives and liquidated damages that may not be resolved until the later stages of the contract or after the contract has been completed. Variable consideration can also include revenue associated with work performed on a unit-rate, T&amp;M or cost-reimbursable basis that is recognized using the POC method. We estimate variable consideration based on the amount we expect to be entitled and include estimated amounts in transaction price to the extent it is probable that a significant future reversal of cumulative revenue recognized will not occur or when we conclude that any significant uncertainty associated with the variable consideration is resolved. See Note 2 for further discussion of our unapproved change orders, claims, incentives and liquidated damages.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Additional Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> &#8211; Topic 606 also requires disclosures regarding the nature, amount, timing and uncertainty of revenues and cash flows from contracts with customers. See Note 2 for required disclosures under Topic 606.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_PrecontractCostPolicyTextBlock', window );">Pre-Contract Costs</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pre-Contract Costs</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Pre-contract costs are generally charged to cost of revenue as incurred, but in certain cases their recognition may be deferred if specific probability criteria are met. At December 31, 2023 and 2022, we had </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> deferred pre-contract costs.</span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_OtherIncomeExpenseNetPolicyTextBlock', window );">Other (Income) Expense, Net</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (Income) Expense, Net</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other (income) expense, net, generally represents recoveries or provisions for bad debts and credit losses, gains or losses associated with the sale or disposition of property and equipment, and income or expense associated with certain nonrecurring items. For 2023 and 2022, other (income) expense, net included gains of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida. See Note 2 for further discussion of the impacts of Hurricane Ida.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income Taxes</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income taxes have been provided for using the liability method. Deferred income taxes reflect the net tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes using enacted rates expected to be in effect during the year in which the differences are expected to reverse. Due to state income tax laws related to the apportionment of revenue for our projects, judgment is required to estimate the effective tax rate expected to apply to tax differences that are anticipated to reverse in the future.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A valuation allowance is provided to reserve for deferred tax assets (&#8220;DTA(s)&#8221;) if, based upon the available evidence, it is more likely than not that some or all of the DTAs will not be realized. The realization of our DTAs depends on our ability to generate sufficient taxable income of the appropriate character and in the appropriate jurisdictions. Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. See Note 5 for further discussion of our income taxes and DTAs.</span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">New Accounting Standards</a></td>
<td class="text"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">New Accounting Standards</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Financial instruments </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the first quarter 2023, we adopted ASU 2016-13, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Financial Instruments - Credit Losses - Measurement of Credit Losses on Financial Instruments,&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> which changes the way we evaluate credit losses for most financial assets and certain other instruments. For trade and other receivables, short-term investments, loans and other instruments, we are required to use a new forward-looking &#8220;expected loss&#8221; model to evaluate impairment, which includes considering a broader range of information to estimate expected credit losses and may potentially result in earlier recognition of allowances for losses. The new accounting standard was adopted using the cumulative-effect transition method with any cumulative-effect adjustment being recorded to accumulated deficit on January 1, 2023. Upon adoption, we recorded a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million increase to beginning accumulated deficit, a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million decrease to contract receivables and retainage, net and contract assets, and a $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million decrease to other noncurrent assets, on our Balance Sheet. Adoption of the new standard did not have a material effect on our results of operations or related disclosures.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Business Combinations </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the first quarter 2023, we adopted ASU 2021-08, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Business Combinations - Accounting for Contract Assets and Contract Liabilities from Contracts with Customers,&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> which changes the way companies measure contract assets and contract liabilities from contracts with customers acquired in a business combination and creates an exception to the general recognition and measurement principle of ASC 805. Adoption of the new standard did not have a material effect on our financial position, results of operations or related disclosures.</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Segment Reporting </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the fourth quarter 2023, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued ASU 2023-07 &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Segment Reporting - Improvements to Reportable Segment Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">,&#8221; which requires additional information about a public company&#8217;s significant segment expenses and more timely and detailed segment information reporting throughout the fiscal period. The new standard will be effective for us in the fourth quarter 2024. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard is required to be applied using the retrospective transition method. We are assessing the effect that the new standard will have on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Income Taxes </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#8211; In the fourth quarter 2023, the FASB issued ASU 2023-09 &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Income Taxes - Improvements to Income Tax Disclosures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">,&#8221; which requires enhanced disclosures related to rate reconciliation and income taxes paid information. The new standard will be effective for us in the fourth quarter 2025. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard may be applied using either the prospective or retrospective transition method. We are assessing the effect of the new standard on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_AssetsHeldForSalePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Assets Held For Sale [Policy Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_AssetsHeldForSalePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_NatureOfOperationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Nature of operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_NatureOfOperationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_OperatingCyclePolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Operating Cycle Policy.</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;">gifi_OperatingCyclePolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_OtherIncomeExpenseNetPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Other (income) expense, net.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_OtherIncomeExpenseNetPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_PrecontractCostPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Precontract cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_PrecontractCostPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of the components of cash, cash equivalents, and short-term investments. Short-term investments may include current marketable securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//320/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for depreciation, depletion, and amortization of property and equipment costs, including methods used and estimated useful lives and how impairment of such assets is assessed and recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480091/360-10-S99-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 4<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482338/360-10-05-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-25<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-28<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-19<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 330<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482105/912-330-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//330/tableOfContent<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483080/330-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483080/330-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 270<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482989/270-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeasesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for leasing arrangement entered into by lessee.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeLeasesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the allowance for doubtful accounts for trade and other accounts receivable balances, and when impairments, charge-offs or recoveries are recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue from contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-19<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-18<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-18<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-20<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-20<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-20<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-20<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.C.Q3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479830/718-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.1.Q5)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479830/718-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.3.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479830/718-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2.Q6)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479830/718-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//718/tableOfContent<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-9<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-12<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574139745712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue, Contract Assets and Liabilities and Other Contract Matters (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Summary of Disaggregation of Revenue</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following tables summarize revenue for each of our operating segments, disaggregated by contract type and duration, for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.787%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year ended December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Eliminations</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,618</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">51,015</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">33</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">22,183</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">87,914</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">38,031</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">125,945</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,016</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,077</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,939</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">93,548</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">89,046</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,110</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">151,067</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,618</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">82,535</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">33</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">53,703</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">91,930</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">6,511</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,077</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">97,364</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">93,548</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">89,046</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,110</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">151,067</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.787%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:9.442%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year ended December 31, 2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Eliminations</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,035</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">36,127</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">48,826</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">79,426</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">9,526</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">88,952</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,561</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,646</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">665</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,542</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">87,022</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">48,299</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">672</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">142,320</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Long-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,035</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">43,037</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">55,743</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">81,987</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,262</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">672</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">86,577</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">87,022</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">48,299</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">672</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">142,320</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock', window );">Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes remaining performance obligations for each of our operating segments, disaggregated by contract type, at </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">December 31, 2023 (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:36.505%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.975%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.975%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.975%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.2%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.975%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;">
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="14" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Fixed-price and unit-rate</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">502</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">11,446</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">709</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">12,657</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">T&amp;M and cost-reimbursable</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">293</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">293</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">502</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">11,739</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">709</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">12,950</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">We expect all of our performance obligations at December 31, 2023, to be recognized as revenue during 2024. </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">C</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">ertain factors and circumstances could result in changes in the timing of recognition of our performance obligations as revenue and the amounts ultimately recognized.</span></div></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Summary of Contract with Customer, Asset and Liability</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Information with respect to contracts that were incomplete at December 31, 2023 and 2022, is as follows (in thousands):</span><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Costs incurred to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">117,274</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">112,693</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Estimated losses incurred to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">12,735</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">12,610</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Sub-total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">104,539</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">100,083</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Billings to date</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">107,270</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">103,440</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,731</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,357</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The above amounts are included within the following captions on our Balance Sheet at December 31, 2023 and 2022 (in thousands):</span></p><p style="margin-left:4.533%;text-indent:-3.17%;padding-left:2.933%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract assets</span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">&#160;(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,739</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,839</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract liabilities </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3), (4), (5)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,470</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">8,196</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,731</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,357</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract assets from December 31, 2022 to December 31, 2023, was primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract assets at December 31, 2023 and 2022, excluded $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.0</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, associated with revenue recognized in excess of amounts billed for which we have an unconditional right to the consideration. Such amounts are reflected within contract receivables. The increase from December 31, 2022 to December 31, 2023, was primarily due to a customer for our Services Division.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract liabilities from December 31, 2022 to December 31, 2023, was primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(4)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during 2023 and 2022, related to amounts included in our contract liabilities balance at December 31, 2022 and 2021, was $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">  </span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(5)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, primarily related to projects for our Shipyard Division. See &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of our accrued contract losses. </span></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_DisclosureOfSignificantCustomersTableTextBlock', window );">Schedules of Concentration of Risk, by Risk Factor</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes revenue for customers that accounted for 10% or more of our consolidated revenue for 2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:47.57%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:22.256%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:22.256%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer A</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">70,497</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">54,257</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer B</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">26,956</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">*</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer C </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">16,498</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">14,635</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer D </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">15,481</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">*</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><p style="margin-left:4.133%;text-indent:-3.602%;padding-left:3.333%;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">(*)	The customer revenue was less than </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% of consolidated revenue for the year.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">For 2023, these customers accounted for </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% or more of our consolidated revenue due to lower revenue for the period associated with a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division, resulting from the resolution of our MPSV Litigation. See </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below and Note 7 for further discussion of the charge and resolution of our MPSV Litigation.</span></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_DisclosureOfSignificantCustomersTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of Significant Customers.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_DisclosureOfSignificantCustomersTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of expected timing for satisfying remaining performance obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -SubTopic 10<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574139746912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Lived Assets and Leased Facilities and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Summary of Property, Plant and Equipment</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Property, plant and equipment consisted of the following at December 31, 2023 and 2022 (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:57.5%;"></td>
        <td style="width:1.4%;"></td>
        <td style="width:12.78%;"></td>
        <td style="width:1.34%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.82%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.34%;"></td>
        <td style="width:1%;"></td>
        <td style="width:10.82%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Estimated</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Useful Life</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(in Years)</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Land</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,103</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,376</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Buildings</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">25</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">19,232</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">25,584</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Machinery and equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">64,035</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">67,851</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Furniture and fixtures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">762</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">994</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Transportation equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">&#160;to </span><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,369</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,361</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Improvements</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span></span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">17,277</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23,246</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Construction in progress</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,060</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,881</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total property, plant and equipment</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">107,838</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">127,293</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated depreciation</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">84,693</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">96,139</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property, plant and equipment, net</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23,145</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">31,154</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Minimum Rental Payments</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future minimum payments under leases having initial terms of more than twelve months are as follows (in thousands):</span><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:80.22%;"></td>
        <td style="width:1.9%;"></td>
        <td style="width:1%;"></td>
        <td style="width:15.88%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Minimum<br/>Payments</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2024</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">884</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2025</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">424</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2026</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">76</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2027</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">64</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total lease payments</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,448</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Less: interest</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">99</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Present value of lease payments </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,349</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">During 2022, we entered into a sublease arrangement with a third-party for the remainder of our corporate office lease, which will partially recover our lease costs for the office for the duration of the lease. In connection therewith, we recorded an impairment charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with the underlying right-of-use asset for the corporate office lease. The impairment is included in other (income) expense, net on our Statement of Operations and is reflected within our Corporate Division.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The discount rate used to determine the present value of our lease payments was based on the interest rate on our LC Facility adjusted for terms similar to that of our leased properties. At December 31, 2023, our weighted-average remaining lease term was approximately </span><span style="font-size:9pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">1.9</span></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> years and the weighted-average discount rate used to derive our lease liability was </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.9</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">.</span></div></div><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">L</span><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Other Intangible Assets</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Other intangible assets were derived from the estimated fair value of existing underlying customer relationships associated with a previous acquisition and consisted of the following at December 31, 2023 and 2022 (in thousands):</span>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:59.272%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:16.403%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer relationships</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">996</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">996</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accumulated amortization</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">296</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">154</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets, net</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">700</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">842</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136941536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Facilities and Debt (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of Future Annual Principal Maturities Under Note Agreement</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Future annual principal maturities under the Note Agreement are as follows (in thousands): </span>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:81.156%;"></td>
        <td style="width:1.92%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.923%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Principal<br/>Maturities</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2024</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,075</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2025</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,108</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2026</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,141</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2027</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,175</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2028</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,210</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Thereafter</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">14,291</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total maturities </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1), (2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">20,000</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">At December 31, 2023, the estimated present value of the Note Agreement amount was $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">12.7</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million based on an estimated market rate of interest.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Due to the forbearance of interest until January 1, 2024, the effective rate on the Note Agreement is </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.9</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% per annum. Accordingly, we accrued interest expense of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million during 2023 associated with the difference between the effective interest rate and stated interest rate on the Note Agreement.</span></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of maturity and sinking fund requirement for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136888064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Reconciliation of Income Tax</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A reconciliation of the U.S. federal statutory tax rate to our income tax (expense) benefit for 2023 and 2022, is as follows (in thousands):</span></p><p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"></td>
        <td style="width:1.1%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.402000000000001%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.1%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.402000000000001%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">U.S. statutory rate</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">21.0</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">21.0</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Increase (decrease) resulting from:</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Permanent differences</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5.1</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State income taxes</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.3</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5.7</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Discrete items</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vesting of common stock</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Change in valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">19.4</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23.1</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Return to provision and other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.8</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income tax (expense) benefit</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">%</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)%</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Components of Income Tax Expense</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Significant components of our income tax (expense) benefit for 2023 and 2022, were as follows (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.923%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.923%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total current</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,933</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">556</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">24</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">166</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,868</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">745</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">41</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Income tax (expense) benefit</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">41</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">23</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Components of Deferred Tax Assets and Liabilities</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Significant components of our deferred tax assets and liabilities at December 31, 2023 and 2022, were as follows (in thousands):</span></p><p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:66.993%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.923%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.58%;"></td>
        <td style="width:1%;"></td>
        <td style="width:12.923%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred tax assets</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Leases</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">144</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">221</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Employee benefits</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,499</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,465</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued losses on uncompleted contracts</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">77</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,076</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Stock based compensation expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">373</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">351</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Debt interest</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">516</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">-</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Federal net operating losses</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">28,413</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">22,444</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">State net operating losses</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,407</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,493</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">R&amp;D and other tax credits</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,037</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,013</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">242</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">481</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred tax assets</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">35,708</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">31,544</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred tax liabilities</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">564</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,051</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Prepaid insurance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">280</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">497</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total deferred tax liabilities</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">844</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,548</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net deferred tax assets</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">34,864</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">29,996</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Valuation allowance</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">34,927</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,100</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net deferred taxes </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">63</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">104</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Amounts are included in other noncurrent liabilities on our Balance Sheet</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">.</span></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Paragraph 9<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Paragraph 12<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574142485120">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement and Long-term Incentive Plans (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract', window );"><strong>Share Based Payments And Retirement Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock', window );">Summary of RSU Activity Excluding Cash Settled RSUs</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">A summary of activity for our RSU awards (excluding Cash-Settled RSUs) for 2023 and 2022 is as follows:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:30.586%;"></td>
        <td style="width:1.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.163%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.66%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.703%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.18%;"></td>
        <td style="width:1%;"></td>
        <td style="width:14.163%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.66%;"></td>
        <td style="width:1%;"></td>
        <td style="width:13.703%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Number<br/>of Shares</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Weighted-<br/>Average<br/>Grant-Date<br/>Fair Value<br/>Per Share</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Number<br/>of Shares</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Weighted-<br/>Average<br/>Grant-Date<br/>Fair Value<br/>Per Share</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">RSUs, beginning of period</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">838,267</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.34</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">842,558</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.47</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Granted</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">550,980</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.47</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">463,600</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.24</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Vested</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">443,106</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.21</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">403,559</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.46</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Forfeited</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">64,332</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.49</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">RSUs, end of period</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">946,141</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.89</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">838,267</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.34</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-based Payments and Retirement Disclosure [Abstract]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574142445712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income (Loss) Per Share and Shareholders' Equity (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_IncomeLossPerShareAndShareholdersEquityAbstract', window );"><strong>Income (Loss) Per Share And Shareholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Computation of Basic and Diluted Income (Loss) Per Share</a></td>
<td class="text"><p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table presents the computation of basic and diluted loss per share for 2023 and 2022 (in thousands, except per share data):</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:47.57%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:22.256%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.96%;"></td>
        <td style="width:1%;"></td>
        <td style="width:22.256%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Years Ended December 31,</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net loss</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">24,402</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,352</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Weighted average shares</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">16,193</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">15,840</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic and diluted loss per share</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.51</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.21</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
      </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_IncomeLossPerShareAndShareholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income (Loss) Per Share And Shareholders' Equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_IncomeLossPerShareAndShareholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574142448144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Summarized Segment Financial Information</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Summarized financial information for our segments as of and for the two-year period ended December 31, 2023, is as follows (in thousands):</span>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:37.763%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year Ended December 31, 2023</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Corporate</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue (eliminations) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">93,548</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">89,046</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">30,417</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,110</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">151,067</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">13,783</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">10,178</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">35,862</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">11,901</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating income (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(1)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">10,929</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">10,558</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">39,374</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,996</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">25,883</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation and amortization expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,926</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,249</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">291</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,466</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capital expenditures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">544</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,233</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">99</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,876</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">32,191</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">42,368</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,553</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">52,316</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">128,428</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p>
      <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;">
       <tr style="visibility:collapse;">
        <td style="width:37.763%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
        <td style="width:1.541%;"></td>
        <td style="width:1%;"></td>
        <td style="width:8.907%;"></td>
        <td style="width:1%;"></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year Ended December 31, 2022</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;">
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Services</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Fabrication</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Shipyard</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Corporate</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total</span></p></td>
        <td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revenue (eliminations)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">87,022</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">48,299</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,671</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">672</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">142,320</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Gross profit (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">11,227</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">274</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,058</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,895</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Operating income (loss) </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(2)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">8,124</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">4,874</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">7,554</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">8,859</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;">(</span><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,415</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Depreciation and amortization expense</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">1,496</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,343</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">259</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">5,098</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#cff0fc;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Capital expenditures</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">2,326</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">633</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">&#8212;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">127</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">3,086</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
       <tr style="height:9pt;background-color:#ffffff;word-break:break-word;">
        <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets </span><span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;">(3)</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">28,016</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">40,531</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">16,330</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">49,989</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
        <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;">134,866</span></p></td>
        <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;">&#160;</span></p></td>
       </tr>
      </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"><span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;">&#160;</span></p><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue for 2023 includes a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million resulting from the resolution of our MPSV Litigation for our Shipyard Division. Gross profit (loss) and operating income (loss) for 2023 includes a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million resulting from the resolution of our MPSV Litigation and project charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division. Operating income (loss) for 2023 also includes gains </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with damage previously caused by Hurricane Ida for our Shipyard Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 7 for further discussion of the resolution of our MPSV Litigation.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Gross profit (loss) and operating income (loss) for 2022 includes project charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division. Operating income (loss) for 2022 also includes gains of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with damage previously caused by Hurricane Ida for our Shipyard Division, an impairment charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million associated with the underlying right-of-use asset for our corporate office lease for our Corporate Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 3 for further discussion of our corporate office lease asset impairment.</span></div></div><div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;">(3)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Cash and short-term investments are reported within our Corporate Division. </span></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-25<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574137001280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Organization and Summary of Significant Accounting Policies - Additional Information (Details)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($) </div>
<div>Segment</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jan. 01, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SignificantAccountingPoliciesLineItems', window );"><strong>Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segments | Segment</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NumberOfCorporateNonOperatingSegments', window );">Number of corporate non-operating segments | Segment</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Increase to beginning accumulated deficit</a></td>
<td class="num">$ (41,373,000)<span></span>
</td>
<td class="num">$ (16,339,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts', window );">Prepaid contract costs</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherOperatingIncomeExpenseNet', window );">Other income expense net</a></td>
<td class="nump">2,296,000<span></span>
</td>
<td class="nump">6,904,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InsuranceRecoveries', window );">Gain on insurance recoveries</a></td>
<td class="nump">571,000<span></span>
</td>
<td class="nump">1,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member', window );">ASU 2016-13</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SignificantAccountingPoliciesLineItems', window );"><strong>Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Increase to beginning accumulated deficit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 600,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit', window );">Increase to beginning accumulated deficit</a></td>
<td class="nump">600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets', window );">Decrease to contract receivables and retainage, net and contract assets</a></td>
<td class="num">(400,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherNoncurrentAssets', window );">Decrease to other noncurrent assets</a></td>
<td class="nump">200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_OtherOperatingIncomeExpenseMember', window );">Other (income) expense, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SignificantAccountingPoliciesLineItems', window );"><strong>Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InsuranceRecoveries', window );">Gain on insurance recoveries</a></td>
<td class="nump">$ 1,500,000<span></span>
</td>
<td class="nump">7,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SignificantAccountingPoliciesLineItems', window );"><strong>Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, useful life</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SignificantAccountingPoliciesLineItems', window );"><strong>Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, useful life</a></td>
<td class="text">25 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=gifi_LCFacilityMember', window );">LC Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SignificantAccountingPoliciesLineItems', window );"><strong>Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedCash', window );">Restricted cash</a></td>
<td class="nump">$ 1,500,000<span></span>
</td>
<td class="nump">$ 1,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=gifi_LCFacilityMember', window );">LC Facility | Balance Sheet Date Classified as Current</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SignificantAccountingPoliciesLineItems', window );"><strong>Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDateDescription', window );">Maturity date, description</a></td>
<td class="text">maturity dates of twelve months or less from the balance sheet date classified as current<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=gifi_LCFacilityMember', window );">LC Facility | Balance Sheet Date Classified as Noncurrent</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SignificantAccountingPoliciesLineItems', window );"><strong>Significant Accounting Policies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDateDescription', window );">Maturity date, description</a></td>
<td class="text">maturity dates of longer than twelve months from the balance sheet date classified as noncurrent<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Decrease to contract receivables and retainage, net and contract assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_NumberOfCorporateNonOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of corporate non-operating segments.</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;">gifi_NumberOfCorporateNonOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Retained earnings increase decrease in accumulated deficit</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;">gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_SignificantAccountingPoliciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Significant Accounting Policies [Line Items]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_SignificantAccountingPoliciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred costs for long-term contracts and programs. Includes, but is not limited to, initial tooling costs and deferred production costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(d)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentMaturityDateDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the maturity date of the debt instrument including whether the debt matures serially and, if so, a brief description of the serial maturities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDateDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InsuranceRecoveries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount recovered from insurance. These recoveries reduce costs and losses that are reported as a separate line item under operating expenses.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InsuranceRecoveries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherOperatingIncomeExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net amount of other operating income and expenses, the components of which are not separately disclosed on the income statement, from items that are associated with the entity's normal revenue producing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherOperatingIncomeExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-8<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_OtherOperatingIncomeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_OtherOperatingIncomeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=gifi_LCFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=gifi_LCFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=gifi_BalanceSheetDateClassifiedAsCurrentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=gifi_BalanceSheetDateClassifiedAsCurrentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=gifi_BalanceSheetDateClassifiedAsNoncurrentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=gifi_BalanceSheetDateClassifiedAsNoncurrentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574138409696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Disaggregation of Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 151,067<span></span>
</td>
<td class="nump">$ 142,320<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerDurationAxis=us-gaap_LongTermContractWithCustomerMember', window );">Long-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">53,703<span></span>
</td>
<td class="nump">55,743<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerDurationAxis=us-gaap_ShortTermContractWithCustomerMember', window );">Short-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">97,364<span></span>
</td>
<td class="nump">86,577<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember', window );">Eliminations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(1,110)<span></span>
</td>
<td class="num">(672)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember', window );">Eliminations | Long-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(33)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember', window );">Eliminations | Short-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(1,077)<span></span>
</td>
<td class="num">(672)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember', window );">Services | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">93,548<span></span>
</td>
<td class="nump">87,022<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember', window );">Services | Operating Segments | Long-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">1,618<span></span>
</td>
<td class="nump">5,035<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember', window );">Services | Operating Segments | Short-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">91,930<span></span>
</td>
<td class="nump">81,987<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember', window );">Fabrication | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">89,046<span></span>
</td>
<td class="nump">48,299<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember', window );">Fabrication | Operating Segments | Long-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">82,535<span></span>
</td>
<td class="nump">43,037<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember', window );">Fabrication | Operating Segments | Short-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">6,511<span></span>
</td>
<td class="nump">5,262<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember', window );">Shipyard | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(30,417)<span></span>
</td>
<td class="nump">7,671<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember', window );">Shipyard | Operating Segments | Long-Term Contract with Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(30,417)<span></span>
</td>
<td class="nump">7,671<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember', window );">Fixed-price and unit-rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">22,183<span></span>
</td>
<td class="nump">48,826<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember', window );">Fixed-price and unit-rate | Eliminations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(33)<span></span>
</td>
<td class="num">(7)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember', window );">Fixed-price and unit-rate | Services | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">1,618<span></span>
</td>
<td class="nump">5,035<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember', window );">Fixed-price and unit-rate | Fabrication | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">51,015<span></span>
</td>
<td class="nump">36,127<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember', window );">Fixed-price and unit-rate | Shipyard | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(30,417)<span></span>
</td>
<td class="nump">7,671<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_TimeAndMaterialsAndCostReimbursableMember', window );">Time And Materials And Cost Reimbursable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">125,945<span></span>
</td>
<td class="nump">88,952<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_TimeAndMaterialsAndCostReimbursableMember', window );">Time And Materials And Cost Reimbursable | Services | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">87,914<span></span>
</td>
<td class="nump">79,426<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_TimeAndMaterialsAndCostReimbursableMember', window );">Time And Materials And Cost Reimbursable | Fabrication | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">38,031<span></span>
</td>
<td class="nump">9,526<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_OtherBasisOfPricingMember', window );">Other</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">2,939<span></span>
</td>
<td class="nump">4,542<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_OtherBasisOfPricingMember', window );">Other | Eliminations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(1,077)<span></span>
</td>
<td class="num">(665)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_OtherBasisOfPricingMember', window );">Other | Services | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 4,016<span></span>
</td>
<td class="nump">2,561<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_OtherBasisOfPricingMember', window );">Other | Fabrication | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,646<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerDurationAxis=us-gaap_LongTermContractWithCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerDurationAxis=us-gaap_LongTermContractWithCustomerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerDurationAxis=us-gaap_ShortTermContractWithCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerDurationAxis=us-gaap_ShortTermContractWithCustomerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_TimeAndMaterialsAndCostReimbursableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_TimeAndMaterialsAndCostReimbursableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_OtherBasisOfPricingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_OtherBasisOfPricingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574233670752">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">$ 12,950<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember', window );">Fixed-price and unit-rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">12,657<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_TimeAndMaterialsAndCostReimbursableMember', window );">Time And Materials And Cost Reimbursable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">293<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">502<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Fabrication</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">11,739<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Shipyard</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">709<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Fixed-price and unit-rate | Services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">502<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Fixed-price and unit-rate | Fabrication</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">11,446<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Fixed-price and unit-rate | Shipyard</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">709<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Time And Materials And Cost Reimbursable | Fabrication</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">$ 293<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">We expect all of our performance obligations at December 31, 2023, to be recognized as revenue during 2024. </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">C</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">ertain factors and circumstances could result in changes in the timing of recognition of our performance obligations as revenue and the amounts ultimately recognized.</span></td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_TimeAndMaterialsAndCostReimbursableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerBasisOfPricingAxis=gifi_TimeAndMaterialsAndCostReimbursableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135723360">
<tr>
<th class="tl" colspan="2" rowspan="1"><div style="width: 200px;"><strong>Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostGross', window );">Costs incurred to date</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 117,274<span></span>
</td>
<td class="nump">$ 112,693<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate', window );">Estimated losses incurred to date</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(12,735)<span></span>
</td>
<td class="num">(12,610)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostNet', window );">Sub-total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">104,539<span></span>
</td>
<td class="nump">100,083<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_CapitalizedContractCostBillingsToDate', window );">Billings to date</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(107,270)<span></span>
</td>
<td class="num">(103,440)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ContractWithCustomerAssetLiabilityNet', window );">Total</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(2,731)<span></span>
</td>
<td class="num">(3,357)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1],[2]</sup></td>
<td class="nump">2,739<span></span>
</td>
<td class="nump">4,839<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[3],[4],[5]</sup></td>
<td class="num">$ (5,470)<span></span>
</td>
<td class="num">$ (8,196)<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%">
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract assets at December 31, 2023 and 2022, excluded $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.0</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, associated with revenue recognized in excess of amounts billed for which we have an unconditional right to the consideration. Such amounts are reflected within contract receivables. The increase from December 31, 2022 to December 31, 2023, was primarily due to a customer for our Services Division.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[2]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract assets from December 31, 2022 to December 31, 2023, was primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[3]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, primarily related to projects for our Shipyard Division. See &#8220;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of our accrued contract losses. </span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[4]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during 2023 and 2022, related to amounts included in our contract liabilities balance at December 31, 2022 and 2021, was $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.6</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</span></td>
</tr>
<tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[5]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract liabilities from December 31, 2022 to December 31, 2023, was primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division.</span></td>
</tr>
</table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_CapitalizedContractCostBillingsToDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Capitalized contract cost billings to date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_CapitalizedContractCostBillingsToDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Capitalized contract cost estimated profit losses incurred to date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ContractWithCustomerAssetLiabilityNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract with customer asset liability net.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_ContractWithCustomerAssetLiabilityNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalizedContractCostGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 340<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479483/340-40-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalizedContractCostNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479483/340-40-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574137320160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Parenthetical) (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent', window );">Contract with customer, asset, revenue recognized in excess of amounts billed, current</a></td>
<td class="nump">$ 6.0<span></span>
</td>
<td class="nump">$ 3.6<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized', window );">Contract with customer, liability, revenue recognized</a></td>
<td class="nump">6.6<span></span>
</td>
<td class="nump">2.7<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember', window );">Shipyard</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent', window );">Contract with customer, liability, accrued contract losses, current</a></td>
<td class="nump">$ 0.4<span></span>
</td>
<td class="nump">$ 1.6<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract with customer, asset, revenue recognized in excess of amounts billed, current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract with customer liability accrued contract losses current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136958544">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 151,067<span></span>
</td>
<td class="nump">$ 142,320<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue, Net | Customer Concentration Risk | Customer A</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">70,497<span></span>
</td>
<td class="nump">54,257<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue, Net | Customer Concentration Risk | Customer B</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">26,956<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue, Net | Customer Concentration Risk | Customer C</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">16,498<span></span>
</td>
<td class="nump">$ 14,635<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue, Net | Customer Concentration Risk | Customer D</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 15,481<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">For 2023, these customers accounted for </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% or more of our consolidated revenue due to lower revenue for the period associated with a charge of $</span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division, resulting from the resolution of our MPSV Litigation. See </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#8220;Changes in Project Estimates&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below and Note 7 for further discussion of the charge and resolution of our MPSV Litigation.</span></td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=gifi_CustomerAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=gifi_CustomerAMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=gifi_CustomerBMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=gifi_CustomerBMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=gifi_CustomerCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=gifi_CustomerCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=gifi_CustomerDMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=gifi_CustomerDMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135295664">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Parenthetical) (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation Settlement, Expense</a></td>
<td class="nump">$ 32.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_LitigationCaseAxis=gifi_MpsvLitigationMember', window );">MPSV Litigation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation Settlement, Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 32.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue, Net | Customer Concentration Risk | Customer C</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk, percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue, Net | Customer Concentration Risk | Customer D</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk, percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue, Net | Customer Concentration Risk | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk, percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-21<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-20<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-18<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LitigationSettlementExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LitigationSettlementExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_LitigationCaseAxis=gifi_MpsvLitigationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_LitigationCaseAxis=gifi_MpsvLitigationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=gifi_CustomerCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=gifi_CustomerCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=gifi_CustomerDMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=gifi_CustomerDMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574134621376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue, Contract Assets and Liabilities and Other Contract Matters - Additional Information (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($) </div>
<div>Vechicle</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>Vechicle</div>
</th>
<th class="th">
<div>Jan. 01, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts', window );">Recognized income associated with revisions to allowance for doubtful accounts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Allowance for doubtful accounts and credit losses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Increase to beginning accumulated deficit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (41,373)<span></span>
</td>
<td class="num">$ (16,339)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation Settlement, Expense</a></td>
<td class="nump">$ 32,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnusualRiskOrUncertaintyByNatureAxis=gifi_HurricaneIdaMember', window );">Hurricane Ida</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ImpactOfHurricaneIdaDescription', window );">Impact of Hurricane Ida, description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">During 2021, our operations were impacted by Hurricane Ida, which made landfall near Houma, Louisiana as a high-end Category 4 hurricane, causing debris and damage to our buildings and equipment at our Houma Facilities. Our insurance coverages in effect at the time of the storm generally specified coverage amounts for each of our buildings (including contents) and major equipment.  <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromInsuranceSettlementOperatingActivities', window );">Insurance payments received</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,200<span></span>
</td>
<td class="nump">13,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_GainLossOnInsuranceRecovery', window );">Gain on insurance recovery</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">7,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_GainOnInterruptionsInsuranceRecovery', window );">Gain on interruptions insurance recovery</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">600<span></span>
</td>
<td class="nump">3,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InsuranceSettlementsReceivableNoncurrent', window );">Insurance receivables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gifi_SeventyVehicleFerryMember', window );">Seventy-Vehicle Ferry</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins', window );">Change in estimated margins</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,300<span></span>
</td>
<td class="nump">900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gifi_FortyVehicleFerryMember', window );">Forty-Vehicle Ferry</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins', window );">Change in estimated margins</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,400<span></span>
</td>
<td class="nump">$ 1,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges', window );">Number of vehicle ferry projects with rework and construction challenges. | Vechicle</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NumberOfVehicleFerryProjects', window );">Number of vehicle ferry projects | Vechicle</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gifi_RemainingFortyVehicleFerryMember', window );">Remaining Forty-Vehicle Ferry | Hurricane Ida</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ChargesRelatedToDeductiblesTotal', window );">Total charges related to deductibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 500<span></span>
</td>
<td class="nump">$ 200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember', window );">Shipyard</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_RevenueVariableConsiderationContractPriceReduction', window );">Reduction of estimated contract price for liquidated damages, amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,400<span></span>
</td>
<td class="nump">1,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins', window );">Change in estimated margins</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,700<span></span>
</td>
<td class="nump">$ 2,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member', window );">ASU 2016-13</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Increase to beginning accumulated deficit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 600<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_LitigationCaseAxis=gifi_MpsvLitigationMember', window );">MPSV Litigation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation Settlement, Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">32,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_LitigationCaseAxis=gifi_MpsvLitigationMember', window );">MPSV Litigation | Shipyard</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LongTermContractsOrProgramsDisclosureLineItems', window );"><strong>Long Term Contracts Or Programs Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation Settlement, Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 32,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ChargesRelatedToDeductiblesTotal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Charges related to deductibles total.</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;">gifi_ChargesRelatedToDeductiblesTotal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract with customer, asset, cumulative catch-up adjustment to revenue, change in estimated margins.</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;">gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_GainLossOnInsuranceRecovery">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain loss on insurance recovery.</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;">gifi_GainLossOnInsuranceRecovery</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_GainOnInterruptionsInsuranceRecovery">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain on interruptions insurance recovery.</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;">gifi_GainOnInterruptionsInsuranceRecovery</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ImpactOfHurricaneIdaDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Impact of Hurricane Ida, description.</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;">gifi_ImpactOfHurricaneIdaDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_LongTermContractsOrProgramsDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long-term Contracts or Programs Disclosure [Line Items]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_LongTermContractsOrProgramsDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_NumberOfVehicleFerryProjects">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of vehicle ferry projects.</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;">gifi_NumberOfVehicleFerryProjects</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of vehicle ferry projects with rework and construction challenges.</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;">gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Recognized income associated with revisions to allowance for doubtful accounts.</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;">gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_RevenueVariableConsiderationContractPriceReduction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Revenue variable consideration contract price reduction.</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;">gifi_RevenueVariableConsiderationContractPriceReduction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479344/326-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InsuranceSettlementsReceivableNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount due after one year of the balance sheet date (or one operating cycle, if longer) of amount due in settlement of a claim for reimbursement from an insurance company when the Company has suffered a loss covered under an insurance policy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InsuranceSettlementsReceivableNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LitigationSettlementExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LitigationSettlementExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromInsuranceSettlementOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow for proceeds from settlement of insurance claim, classified as operating activities. Excludes insurance settlement classified as investing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-16<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 21B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-21B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromInsuranceSettlementOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnusualRiskOrUncertaintyByNatureAxis=gifi_HurricaneIdaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnusualRiskOrUncertaintyByNatureAxis=gifi_HurricaneIdaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gifi_SeventyVehicleFerryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gifi_SeventyVehicleFerryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gifi_FortyVehicleFerryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gifi_FortyVehicleFerryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gifi_RemainingFortyVehicleFerryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gifi_RemainingFortyVehicleFerryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_LitigationCaseAxis=gifi_MpsvLitigationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_LitigationCaseAxis=gifi_MpsvLitigationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135768560">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-Lived Assets and Leased Facilities and Equipment - Summary of Property, Plant and Equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">$ 107,838<span></span>
</td>
<td class="nump">$ 127,293<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated depreciation</a></td>
<td class="num">(84,693)<span></span>
</td>
<td class="num">(96,139)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">23,145<span></span>
</td>
<td class="nump">31,154<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember', window );">Land</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">2,103<span></span>
</td>
<td class="nump">4,376<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember', window );">Buildings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">19,232<span></span>
</td>
<td class="nump">25,584<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">64,035<span></span>
</td>
<td class="nump">67,851<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and fixtures</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">762<span></span>
</td>
<td class="nump">994<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TransportationEquipmentMember', window );">Transportation equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">$ 2,369<span></span>
</td>
<td class="nump">2,361<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember', window );">Improvements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">15 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">$ 17,277<span></span>
</td>
<td class="nump">23,246<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember', window );">Construction in progress</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">$ 2,060<span></span>
</td>
<td class="nump">$ 2,881<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Buildings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Machinery and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Furniture and fixtures</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Transportation equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">25 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Buildings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">25 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Machinery and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">15 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Furniture and fixtures</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Transportation equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, plant and equipment, estimated useful life</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480842/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TransportationEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TransportationEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135089312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Lived Assets and Leased Facilities and Equipment - Additional Information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Feb. 29, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAmortizationAndAccretionNet', window );">Depreciation expense for continuing operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,900,000<span></span>
</td>
<td class="nump">$ 4,700,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LeaseDescription', window );">Lease description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">We lease certain office, warehouse and operating facilities under long-term lease arrangements that expire at various dates through October 2027, some of which include renewal options ranging from one to 20 years.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease, right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Other noncurrent assets<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current lease liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Total current liabilities<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Long-term lease liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Other noncurrent liabilities<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Lease agreement expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,700,000<span></span>
</td>
<td class="nump">1,600,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating lease payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,000,000<span></span>
</td>
<td class="nump">2,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Carrying value of asset held for sale</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,640,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillImpairmentLoss', window );">Goodwill impairment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember', window );">Other Intangible Assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Intangible assets, useful life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">7 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization expense for intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=gifi_OtherIncomeExpenseNetMember', window );">Other Income Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubleaseIncome', window );">Sublease income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 600,000<span></span>
</td>
<td class="nump">400,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember', window );">Fabrication Division</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts', window );">Proceeds from the sale of assets net of transaction and other costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,900,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Gain or loss recognized on sale of purchase option</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRenewalTerm', window );">Lease renewal term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Other Intangible Assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths', window );">Intangible assets amortization expense, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo', window );">Intangible assets amortization expense, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree', window );">Intangible assets amortization expense, 2026</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour', window );">Intangible assets amortization expense, 2027</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive', window );">Intangible assets amortization expense, 2028</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRenewalTerm', window );">Lease renewal term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">20 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Other Intangible Assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths', window );">Intangible assets amortization expense, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo', window );">Intangible assets amortization expense, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree', window );">Intangible assets amortization expense, 2026</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour', window );">Intangible assets amortization expense, 2027</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive', window );">Intangible assets amortization expense, 2028</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gifi_HoumaFacilitiesMember', window );">Houma Facilities | Fabrication Division</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Carrying value of asset held for sale</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gifi_HoumaFacilitiesMember', window );">Houma Facilities | Fabrication Division | Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts', window );">Proceeds from the sale of assets held for sale net of transaction and other costs</a></td>
<td class="nump">$ 8,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_LeaseDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lease description.</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;">gifi_LeaseDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from the sale of assets held for sale net of transaction and other costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from sale of assets net of transaction and other costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482686/350-30-45-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483475/205-20-45-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-9<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationAmortizationAndAccretionNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate net amount of depreciation, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAmortizationAndAccretionNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the next rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the fifth rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the fourth rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the third rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the second rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482598/350-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseRenewalTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseRenewalTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease expense. Excludes sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes current operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes noncurrent operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes operating lease right-of-use asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubleaseIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of sublease income excluding finance and operating lease expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubleaseIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=gifi_OtherIncomeExpenseNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=gifi_OtherIncomeExpenseNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gifi_HoumaFacilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=gifi_HoumaFacilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136730160">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2024</a></td>
<td class="nump">$ 884<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2025</a></td>
<td class="nump">424<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2026</a></td>
<td class="nump">76<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2027</a></td>
<td class="nump">64<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total lease payments</a></td>
<td class="nump">1,448<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: interest</a></td>
<td class="num">(99)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Present value of lease payments</a></td>
<td class="nump">$ 1,349<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136716304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Parenthetical) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetImpairmentCharges', window );">Asset impairment charges</a></td>
<td class="nump">$ 484<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Operating lease, term of contract</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 10 months 24 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseDiscountRate', window );">Operating lease, weighted-average discount rate (percentage)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.90%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Discount rate used by lessee to determine present value of operating lease payments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseTermOfContract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136923536">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-Lived Assets and Leased Facilities and Equipment - Schedule of Other Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedCustomerRelationshipsGross', window );">Customer relationships</a></td>
<td class="nump">$ 996<span></span>
</td>
<td class="nump">$ 996<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(296)<span></span>
</td>
<td class="num">(154)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets, net</a></td>
<td class="nump">$ 700<span></span>
</td>
<td class="nump">$ 842<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedCustomerRelationshipsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross carrying amount before accumulated amortization as of the balance sheet date to an asset acquired in a business combination representing a favorable existing relationship with customers having a finite beneficial life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedCustomerRelationshipsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483154/926-20-50-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135470496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Facilities and Debt - Additional Information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Nov. 06, 2023</div></th>
<th class="th"><div>May 05, 2023</div></th>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Maturity date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Jun. 30,  2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SuretyBonds', window );">Surety bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 52,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateTerms', window );">Debt instrument, interest rate terms</a></td>
<td class="text">principal and interest payable in 15 equal annual installments<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_PercentageOfProvisionRequiredFromProceedsReceived', window );">Percentage of provision required from proceeds received in excess of sale of real estate</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision', window );">Proceeds from sale of real estate required to make provision</a></td>
<td class="nump">$ 8,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=gifi_ShortTermPremiumFinanceArrangementMember', window );">Short-term Premium Finance Arrangement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Stated interest rate (percentage)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.30%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Short-term premium finance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPaymentTerms', window );">short-term premium finance , Number of installment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> payable in ten equal monthly installments through March 2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=gifi_NoteAgreementMember', window );">Note Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Stated interest rate (percentage)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.90%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Short-term premium finance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 12,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=gifi_GeneralLiabilityArrangementMember', window );">General Liability Arrangement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Stated interest rate (percentage)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Short-term premium finance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPaymentTerms', window );">short-term premium finance , Number of installment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">payable in eight equal monthly installments through August 2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember', window );">Insurance Finance and General Liability Arrangements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAnnualPrincipalPayment', window );">Principal payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,700,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingenciesByNatureOfContingencyAxis=gifi_PromissoryNoteMember', window );">Promissory Note | Note Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Stated interest rate (percentage)</a></td>
<td class="nump">3.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentIssuedPrincipal', window );">Debt instrument, issued, principal</a></td>
<td class="nump">$ 20,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPayment', window );">Debt instrument, periodic payment</a></td>
<td class="nump">$ 1,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment', window );">Debt instrument, frequency of periodic payment</a></td>
<td class="text">15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDateRangeStart1', window );">Debt instrument, maturity date, start</a></td>
<td class="text">Dec. 31,  2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDateRangeEnd1', window );">Debt instrument, maturity date, end</a></td>
<td class="text">Dec. 31,  2038<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FerryProjectsMember', window );">Ferry Projects</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SuretyContractsOfInsuranceCoverages', window );">Surety bonds subject to dispute</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">45,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember', window );">Fabrication</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_SuretyContractsOfInsuranceCoverages', window );">Surety bonds subject to dispute</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,900,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentDecreaseForgiveness', window );">Letter of credit facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 20,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentDecreaseForgiveness', window );">Letter of credit facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=gifi_LCFacilityMember', window );">LC Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Fees on undrawn borrowings (percentage)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.40%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LettersOfCreditOutstandingAmount', window );">Total outstanding letters of credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_LetterOfCreditMember', window );">Letter of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Stated interest rate (percentage)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_PercentageOfProvisionRequiredFromProceedsReceived">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of provision required from proceeds received.</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;">gifi_PercentageOfProvisionRequiredFromProceedsReceived</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from sale of real estate required to make provision.</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;">gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_SuretyBonds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Surety Bonds</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;">gifi_SuretyBonds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_SuretyContractsOfInsuranceCoverages">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Surety contracts of insurance coverages.</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;">gifi_SuretyContractsOfInsuranceCoverages</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAnnualPrincipalPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the total principal payments made during the annual reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAnnualPrincipalPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentDecreaseForgiveness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Decrease for amounts of indebtedness forgiven by the holder of the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentDecreaseForgiveness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482900/835-30-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69B<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69C<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-2<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482949/835-30-55-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the frequency of periodic payments (monthly, quarterly, annual).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480848/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFrequencyOfPeriodicPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the interest rate as being fixed or variable, and, if variable, identification of the index or rate on which the interest rate is based and the number of points or percentage added to that index or rate to set the rate, and other pertinent information, such as frequency of rate resets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateTerms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentIssuedPrincipal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of principal of debt issued.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentIssuedPrincipal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentMaturityDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(2))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentMaturityDateRangeEnd1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Latest date the outstanding debt instruments are required to be repaid, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDateRangeEnd1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentMaturityDateRangeStart1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Earliest date the outstanding debt instruments are required to be repaid, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDateRangeStart1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentPaymentTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the payment terms of the debt instrument (for example, whether periodic payments include principal and frequency of payments) and discussion about any contingencies associated with the payment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480848/942-470-50-3<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPaymentTerms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentPeriodicPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the required periodic payments including both interest and principal payments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480848/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPeriodicPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LettersOfCreditOutstandingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LettersOfCreditOutstandingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=gifi_ShortTermPremiumFinanceArrangementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=gifi_ShortTermPremiumFinanceArrangementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=gifi_NoteAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=gifi_NoteAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=gifi_GeneralLiabilityArrangementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=gifi_GeneralLiabilityArrangementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LossContingenciesByNatureOfContingencyAxis=gifi_PromissoryNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingenciesByNatureOfContingencyAxis=gifi_PromissoryNoteMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FerryProjectsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_FerryProjectsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=gifi_LCFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=gifi_LCFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=us-gaap_LetterOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_LetterOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135792880">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Details) - Note Agreement<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2024</a></td>
<td class="nump">$ 1,075<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2025</a></td>
<td class="nump">1,108<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">2026</a></td>
<td class="nump">1,141<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">2027</a></td>
<td class="nump">1,175<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive', window );">2028</a></td>
<td class="nump">1,210<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive', window );">Thereafter</a></td>
<td class="nump">14,291<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total maturities</a></td>
<td class="nump">$ 20,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482900/835-30-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69B<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69C<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69E<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69F<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69B<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481544/470-10-50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=gifi_NoteAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=gifi_NoteAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574137189856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Parenthetical) (Details) - Note Agreement<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Estimated present value</a></td>
<td class="nump">$ 12.7<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Effective rate on Note</a></td>
<td class="nump">2.90%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInterestPayableNet', window );">Accrued interest expense</a></td>
<td class="nump">$ 0.1<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482900/835-30-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69B<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69C<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-2<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482949/835-30-55-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482900/835-30-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69B<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69C<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69E<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69F<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInterestPayableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in interest payable, which represents the amount owed to note holders, bond holders, and other parties for interest earned on loans or credit extended to the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInterestPayableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TypeOfArrangementAxis=gifi_NoteAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TypeOfArrangementAxis=gifi_NoteAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135753520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Shipyard Transaction and Discontinued Operations - Additional Information (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>Vechicle</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement Balance Sheet And Additional Disclosures By Disposal Groups Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Liabilities</a></td>
<td class="nump">$ 32,242<span></span>
</td>
<td class="nump">$ 49,457<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetImpairmentCharges', window );">Asset impairments</a></td>
<td class="nump">$ 484<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=gifi_FortyVehicleFerryMember', window );">Forty-Vehicle Ferry</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement Balance Sheet And Additional Disclosures By Disposal Groups Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NumberOfVehicleFerryProjects', window );">Number of vehicle ferry projects | Vechicle</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_NumberOfVehicleFerryProjects">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of vehicle ferry projects.</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;">gifi_NumberOfVehicleFerryProjects</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=gifi_FortyVehicleFerryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=gifi_FortyVehicleFerryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135805344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Reconciliation of Income Taxes (Details)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract', window );"><strong>Effective Income Tax Rate Reconciliation, Percent [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">U.S. statutory rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract', window );"><strong>Increase (decrease) resulting from:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent', window );">Permanent differences</a></td>
<td class="num">(1.00%)<span></span>
</td>
<td class="num">(5.10%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State income taxes</a></td>
<td class="num">(0.30%)<span></span>
</td>
<td class="nump">5.70%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost', window );">Vesting of common stock</a></td>
<td class="num">(0.20%)<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="num">(19.40%)<span></span>
</td>
<td class="num">(23.10%)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent', window );">Return to provision and other</a></td>
<td class="nump">0.10%<span></span>
</td>
<td class="nump">1.80%<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Income tax (expense) benefit</a></td>
<td class="nump">0.20%<span></span>
</td>
<td class="num">(0.70%)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective Income Tax Rate Reconciliation, Increase (Decrease), Percent [Abstract]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective income tax reconciliation, permanent differences, percent.</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;">gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective income tax reconciliation return to provision and other percent.</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;">gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136956352">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Components of Income Tax Expense (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Current</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Total current</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Deferred</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">4,933<span></span>
</td>
<td class="nump">556<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="num">(24)<span></span>
</td>
<td class="nump">166<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount', window );">Valuation allowance</a></td>
<td class="num">(4,868)<span></span>
</td>
<td class="num">(745)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Total deferred</a></td>
<td class="nump">41<span></span>
</td>
<td class="num">(23)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (expense) benefit</a></td>
<td class="nump">$ 41<span></span>
</td>
<td class="num">$ (23)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482659/740-20-45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in the valuation allowance for a specified deferred tax asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574134744720">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Taxes - Components of Deferred Tax Assets and Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGrossAbstract', window );"><strong>Deferred tax assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_DeferredTaxAssetsLeases', window );">Leases</a></td>
<td class="nump">$ 144<span></span>
</td>
<td class="nump">$ 221<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits', window );">Employee benefits</a></td>
<td class="nump">1,499<span></span>
</td>
<td class="nump">1,465<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts', window );">Accrued losses on uncompleted contracts</a></td>
<td class="nump">77<span></span>
</td>
<td class="nump">2,076<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost', window );">Stock based compensation expense</a></td>
<td class="nump">373<span></span>
</td>
<td class="nump">351<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_DeferredTaxAssetsDebtInterest', window );">Debt interest</a></td>
<td class="nump">516<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Federal net operating losses</a></td>
<td class="nump">28,413<span></span>
</td>
<td class="nump">22,444<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal', window );">State net operating losses</a></td>
<td class="nump">3,407<span></span>
</td>
<td class="nump">3,493<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch', window );">R&amp;D and other tax credits</a></td>
<td class="nump">1,037<span></span>
</td>
<td class="nump">1,013<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOther', window );">Other</a></td>
<td class="nump">242<span></span>
</td>
<td class="nump">481<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGross', window );">Total deferred tax assets</a></td>
<td class="nump">35,708<span></span>
</td>
<td class="nump">31,544<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred tax liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_DeferredTaxLiabilitiesDepreciation', window );">Depreciation</a></td>
<td class="num">(564)<span></span>
</td>
<td class="num">(1,051)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses', window );">Prepaid insurance</a></td>
<td class="num">(280)<span></span>
</td>
<td class="num">(497)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Total deferred tax liabilities</a></td>
<td class="num">(844)<span></span>
</td>
<td class="num">(1,548)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_DeferredTaxAssetsLiabilitiesGross', window );">Net deferred tax assets</a></td>
<td class="nump">34,864<span></span>
</td>
<td class="nump">29,996<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="num">(34,927)<span></span>
</td>
<td class="num">(30,100)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Net deferred taxes</a></td>
<td class="num">$ (63)<span></span>
</td>
<td class="num">$ (104)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets, Accrued losses on uncompleted contracts.</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;">gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_DeferredTaxAssetsDebtInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets debt interest.</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;">gifi_DeferredTaxAssetsDebtInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_DeferredTaxAssetsLeases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets leases.</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;">gifi_DeferredTaxAssetsLeases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_DeferredTaxAssetsLiabilitiesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets (liabilities), gross.</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;">gifi_DeferredTaxAssetsLiabilitiesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_DeferredTaxLiabilitiesDepreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax liabilities depreciation.</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;">gifi_DeferredTaxLiabilitiesDepreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsGrossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGrossAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible state and local operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-8<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from employee benefits, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesPrepaidExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135287648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Additional Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGross', window );">Total deferred tax assets</a></td>
<td class="nump">$ 35,708<span></span>
</td>
<td class="nump">$ 31,544<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Federal net operating losses</a></td>
<td class="nump">28,413<span></span>
</td>
<td class="nump">22,444<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="nump">34,927<span></span>
</td>
<td class="nump">$ 30,100<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Domestic Tax Authority</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards</a></td>
<td class="nump">135,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_OperatingLossCarryforwardsSubjectToExpire', window );">Operating loss carryforwards subject to expire</a></td>
<td class="nump">$ 42,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLimitationsOnUse', window );">Operating loss carryforwards, limitations on use, description</a></td>
<td class="text">remaining U.S. federal NOL carryforwards eligible to be carried forward indefinitely, subject to an 80% limitation on taxable income in each year.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome', window );">Operating loss carryforwards limitation rate on taxable income</a></td>
<td class="nump">80.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State and Local Jurisdiction</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards</a></td>
<td class="nump">$ 45,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Operating loss carryforwards limitation rate on taxable income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_OperatingLossCarryforwardsSubjectToExpire">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Operating loss carryforwards subject to expire.</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;">gifi_OperatingLossCarryforwardsSubjectToExpire</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxContingencyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxContingencyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwardsLimitationsOnUse">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 description of the limitations on the use of all operating loss carryforwards available to reduce future taxable income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwardsLimitationsOnUse</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574134879440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement and Long-Term Incentive Plans - Additional Information (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount', window );">Employer discretionary contribution</a></td>
<td class="nump">$ 700<span></span>
</td>
<td class="nump">$ 700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Available shares for future issuance (in shares)</a></td>
<td class="nump">1,146,746<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation cost charged against income</a></td>
<td class="nump">$ 1,991<span></span>
</td>
<td class="nump">$ 2,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Recognition of compensation cost, weighted average period</a></td>
<td class="text">1 year 6 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding stock option awards</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Cash based performance award granted</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 1,991<span></span>
</td>
<td class="nump">$ 2,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee', window );">Maximum number of shares available for grant for each employee (in shares)</a></td>
<td class="nump">300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=gifi_TimeBasedRSUAwardsMember', window );">Time-based RSU Awards | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">RSU awards vesting period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=gifi_TimeBasedRSUAwardsMember', window );">Time-based RSU Awards | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">RSU awards vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=gifi_PerformanceBasedRSUAwardsMember', window );">Performance-based RSU Awards</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">RSU awards vesting period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=gifi_PerformanceBasedRSUAwardsMember', window );">Performance-based RSU Awards | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets', window );">Number of shares of common stock ultimately issued as percent of target award based on achievement of performance targets</a></td>
<td class="nump">200.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=gifi_PerformanceBasedRSUAwardsMember', window );">Performance-based RSU Awards | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets', window );">Number of shares of common stock ultimately issued as percent of target award based on achievement of performance targets</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=gifi_CashSettledRSUAwardsMember', window );">Cash Settled RSU Awards</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation cost charged against income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards', window );">Cash-settled RSU paid</a></td>
<td class="nump">$ 100<span></span>
</td>
<td class="nump">100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">RSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation cost charged against income</a></td>
<td class="nump">$ 2,000<span></span>
</td>
<td class="nump">$ 2,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average grant date fair value</a></td>
<td class="nump">$ 3.47<span></span>
</td>
<td class="nump">$ 4.24<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Total unrecognized compensation costs</a></td>
<td class="nump">$ 1,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross', window );">Value of awards granted</a></td>
<td class="nump">1,900<span></span>
</td>
<td class="nump">$ 2,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue', window );">Total fair value of shares vested</a></td>
<td class="nump">1,600<span></span>
</td>
<td class="nump">1,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 2,000<span></span>
</td>
<td class="nump">$ 2,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock ultimately issued as percent of target award based on achievement of performance targets.</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;">gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of discretionary contributions made by an employer to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate cash paid by the entity during the period to settle equity instruments granted under equity-based payment arrangements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 highest quantity of shares an employee can purchase under the plan per period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate value of stock related to Restricted Stock Awards issued during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=gifi_TimeBasedRSUAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=gifi_TimeBasedRSUAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=gifi_PerformanceBasedRSUAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=gifi_PerformanceBasedRSUAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=gifi_CashSettledRSUAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=gifi_CashSettledRSUAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135288576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement and Long-Term Incentive Plans - Summary of RSU Activity Excluding Cash Settled RSUs (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">RSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Number of Shares</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">RSUs shares at the beginning of period (in shares)</a></td>
<td class="nump">838,267<span></span>
</td>
<td class="nump">842,558<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">550,980<span></span>
</td>
<td class="nump">463,600<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="num">(443,106)<span></span>
</td>
<td class="num">(403,559)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(64,332)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">RSUs shares at the end of period (in shares)</a></td>
<td class="nump">946,141<span></span>
</td>
<td class="nump">838,267<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted- Average Grant-Date Fair Value Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">RSUs shares at the beginning of period (USD per share)</a></td>
<td class="nump">$ 4.34<span></span>
</td>
<td class="nump">$ 4.47<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average grant date fair value</a></td>
<td class="nump">3.47<span></span>
</td>
<td class="nump">4.24<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (USD per share)</a></td>
<td class="nump">4.21<span></span>
</td>
<td class="nump">4.46<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited (USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.49<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">RSUs shares at the end of period (USD per share)</a></td>
<td class="nump">$ 3.89<span></span>
</td>
<td class="nump">$ 4.34<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136486528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies - Additional Information (Details)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Mar. 19, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2018 </div>
<div>Vessel</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels', window );">Number of multi-purpose service vessels | Vessel</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation charge</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 32.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset', window );">Non-cash litigation charge associated with write-off of net contract asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LitigationExpenseAssociatedWithRecordingLiability', window );">Litigation charge associated with recording liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 20.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingenciesByNatureOfContingencyAxis=us-gaap_SuretyBondMember', window );">Surety Bond</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_LossContingencyUnderPerformanceBondsIssued', window );">Claims under performance bonds issued</a></td>
<td class="nump">$ 50.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Construction in progress, number of multi-purpose service vessels.</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;">gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_LitigationExpenseAssociatedWithRecordingLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Litigation expense associated with recording liability.</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;">gifi_LitigationExpenseAssociatedWithRecordingLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_LossContingencyUnderPerformanceBondsIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Loss contingency under performance bonds issued.</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;">gifi_LossContingencyUnderPerformanceBondsIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Non-cash litigation expense associated with write-off of net contract asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LitigationSettlementExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LitigationSettlementExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LossContingenciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-4<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingenciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LossContingenciesByNatureOfContingencyAxis=us-gaap_SuretyBondMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingenciesByNatureOfContingencyAxis=us-gaap_SuretyBondMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574134791936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income (Loss) Per Share and Shareholders' Equity - Computation of Basic and Diluted Earnings Per Share (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (24,402)<span></span>
</td>
<td class="num">$ (3,352)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic loss per common share</a></td>
<td class="num">$ (1.51)<span></span>
</td>
<td class="num">$ (0.21)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted loss per common share</a></td>
<td class="num">$ (1.51)<span></span>
</td>
<td class="num">$ (0.21)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average shares basic</a></td>
<td class="nump">16,193<span></span>
</td>
<td class="nump">15,840<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average shares diluted</a></td>
<td class="nump">16,193<span></span>
</td>
<td class="nump">15,840<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574138632176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income (Loss) Per Share and Shareholders' Equity - Additional Information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 01, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Repurchases of common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 128,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareRepurchaseProgramAxis=gifi_ShareRepurchaseProgramMember', window );">Share Repurchase Program</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Amount of shares authorized to be repurchased</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,900,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramExpirationDate', window );">Stock repurchase program, expiration date</a></td>
<td class="text">Dec. 15,  2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Repurchases of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29,578<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Repurchases of common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareRepurchaseProgramAxis=gifi_ShareRepurchaseProgramMember', window );">Share Repurchase Program | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Amount of shares authorized to be repurchased</a></td>
<td class="nump">$ 5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityClassOfTreasuryStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityClassOfTreasuryStockLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of stock repurchase plan authorized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramExpirationDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expiration date for the purchase of an entity's own shares under a stock repurchase plan, in the YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramExpirationDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480767/946-205-45-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareRepurchaseProgramAxis=gifi_ShareRepurchaseProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareRepurchaseProgramAxis=gifi_ShareRepurchaseProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574135294960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments - Additional Information (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($) </div>
<div>Segment</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segments | Segment</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_NumberOfCorporateNonOperatingSegments', window );">Number of corporate non-operating segments | Segment</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Net operating liabilities</a></td>
<td class="nump">$ 800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Net operating liabilities</a></td>
<td class="nump">$ 1,349<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]</a></td>
<td class="text">Liabilities, Current<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember', window );">Shipyard Division</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Net operating liabilities</a></td>
<td class="nump">$ 1,400<span></span>
</td>
<td class="nump">$ 2,700<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_NumberOfCorporateNonOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of corporate non-operating segments.</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;">gifi_NumberOfCorporateNonOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes current operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574137075392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments - Summarized Segment Financial Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 151,067<span></span>
</td>
<td class="nump">$ 142,320<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit (loss)</a></td>
<td class="num">(11,901)<span></span>
</td>
<td class="nump">7,895<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income (loss)</a></td>
<td class="num">(25,883)<span></span>
</td>
<td class="num">(3,415)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">5,466<span></span>
</td>
<td class="nump">5,098<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">128,428<span></span>
</td>
<td class="nump">134,866<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">93,548<span></span>
</td>
<td class="nump">87,022<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Fabrication</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">89,046<span></span>
</td>
<td class="nump">48,299<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Shipyard</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(30,417)<span></span>
</td>
<td class="nump">7,671<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember', window );">Continuing Operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">151,067<span></span>
</td>
<td class="nump">142,320<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit (loss)</a></td>
<td class="num">(11,901)<span></span>
</td>
<td class="nump">7,895<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income (loss)</a></td>
<td class="num">(25,883)<span></span>
</td>
<td class="num">(3,415)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">5,466<span></span>
</td>
<td class="nump">5,098<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentExpenditureAdditionToLongLivedAssets', window );">Capital expenditures</a></td>
<td class="nump">2,876<span></span>
</td>
<td class="nump">3,086<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">128,428<span></span>
</td>
<td class="nump">134,866<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember', window );">Continuing Operations | Operating Segments | Services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">93,548<span></span>
</td>
<td class="nump">87,022<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit (loss)</a></td>
<td class="nump">13,783<span></span>
</td>
<td class="nump">11,227<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income (loss)</a></td>
<td class="nump">10,929<span></span>
</td>
<td class="nump">8,124<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">1,926<span></span>
</td>
<td class="nump">1,496<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentExpenditureAdditionToLongLivedAssets', window );">Capital expenditures</a></td>
<td class="nump">544<span></span>
</td>
<td class="nump">2,326<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">32,191<span></span>
</td>
<td class="nump">28,016<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember', window );">Continuing Operations | Operating Segments | Fabrication</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">89,046<span></span>
</td>
<td class="nump">48,299<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit (loss)</a></td>
<td class="nump">10,178<span></span>
</td>
<td class="num">(274)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income (loss)</a></td>
<td class="nump">10,558<span></span>
</td>
<td class="nump">4,874<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">3,249<span></span>
</td>
<td class="nump">3,343<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentExpenditureAdditionToLongLivedAssets', window );">Capital expenditures</a></td>
<td class="nump">2,233<span></span>
</td>
<td class="nump">633<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">42,368<span></span>
</td>
<td class="nump">40,531<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember', window );">Continuing Operations | Operating Segments | Shipyard</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">30,417<span></span>
</td>
<td class="nump">7,671<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit (loss)</a></td>
<td class="num">(35,862)<span></span>
</td>
<td class="num">(3,058)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income (loss)</a></td>
<td class="num">(39,374)<span></span>
</td>
<td class="num">(7,554)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">1,553<span></span>
</td>
<td class="nump">16,330<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember', window );">Continuing Operations | Corporate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(1,110)<span></span>
</td>
<td class="num">(672)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income (loss)</a></td>
<td class="num">(7,996)<span></span>
</td>
<td class="num">(8,859)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">291<span></span>
</td>
<td class="nump">259<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentExpenditureAdditionToLongLivedAssets', window );">Capital expenditures</a></td>
<td class="nump">99<span></span>
</td>
<td class="nump">127<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">$ 52,316<span></span>
</td>
<td class="nump">$ 49,989<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentExpenditureAdditionToLongLivedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenditure for addition to long-lived assets included in determination of segment assets by chief operating decision maker (CODM) or otherwise regularly provided to CODM. Excludes expenditure for addition to financial instrument, long-term customer relationship of financial institution, mortgage and other servicing rights, deferred policy acquisition cost, and deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-25<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482785/280-10-55-48<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentExpenditureAdditionToLongLivedAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ServicesSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOperatingActivitiesSegmentAxis=us-gaap_SegmentContinuingOperationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574134802736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments - Summarized Segment Financial Information (Parenthetical) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation charge</a></td>
<td class="nump">$ 32,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetImpairmentCharges', window );">Asset impairments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 484<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_LitigationCaseAxis=gifi_MpsvLitigationMember', window );">MPSV Litigation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation charge</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 32,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice', window );">Increase in operating income (loss) due to project charges</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(32,500)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetImpairmentCharges', window );">Asset impairments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">500<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember', window );">Fabrication</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InsuredEventGainLoss', window );">Gain on insurance recoveries</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">7,500<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember', window );">Shipyard</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice', window );">Increase in operating income (loss) due to project charges</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,700<span></span>
</td>
<td class="nump">2,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ChargesAssociatedWithDamageCausedByHurricane', window );">Charges associated with damage caused by Hurricane Laura</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">500<span></span>
</td>
<td class="nump">$ 200<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember', window );">Shipyard | MPSV Litigation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation charge</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 32,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ChargesAssociatedWithDamageCausedByHurricane">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Charges associated with damage caused by Hurricane.</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;">gifi_ChargesAssociatedWithDamageCausedByHurricane</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in revenue recognized for cumulative catch-up adjustment from change in estimate of transaction price which increases (decreases) right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time. Includes, but is not limited to, change in assessment of whether estimate of variable consideration is constrained.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InsuredEventGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of excess (deficiency) of insurance recovery over the loss incurred from an insured event.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483049/450-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InsuredEventGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LitigationSettlementExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LitigationSettlementExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_LitigationCaseAxis=gifi_MpsvLitigationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_LitigationCaseAxis=gifi_MpsvLitigationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_ShipyardSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.0.1</span><table class="report" border="0" cellspacing="2" id="idm140574136963040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events - Additional Information (Details)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
</tr>
<tr><th class="th">
<div>Feb. 29, 2024 </div>
<div>USD ($)</div>
</th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Fabrication | Houma Facilities</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts', window );">Proceeds from the sale of assets held for sale net of transaction and other costs</a></td>
<td class="nump">$ 8.5<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from the sale of assets held for sale net of transaction and other costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>gifi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481674/830-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483399/855-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=gifi_FabricationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=gifi_HoumaFacilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=gifi_HoumaFacilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>64
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    (  B.9U@'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    "  (CF=8!M$ET^\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+!
M3L,P#(9?!>7>NDT'0U'7"X@32$A, G&+'&^+:-HH,6KW]K1AZX3@ 3C&_O/Y
ML^0:O<(^T'/H/06V%*]&UW91H=^( [-7 !$/Y'3,IT0W-7=]<)JG9]B#U_BA
M]P2R*&[ $6NC6<,,S/Q"%$UM4&$@S7TXX0TN>/\9V@0S"-22HXXCE'D)HIDG
M^N/8UG !S#"FX.)W@<Q"3-4_L:D#XI0<HUU2PS#D0Y5RTPXEO#T]OJ1U,]M%
MUAW2]"M:Q4=/&W&>_%K=W6\?1",+N<J**BO66RG5:JVN;]]GUQ]^%V'7&[NS
M_]CX+-C4\.LNFB]02P,$%     @ "(YG6)E<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
M"  (CF=8LON5\'((  " -0  &    'AL+W=O<FMS:&5E=',O<VAE970Q+GAM
M;+6;;7/B-AN%_XJ&=G;:F27XA4"RFV2&&-C29A,:V&[S=)X/PA;@B6U12<[+
MO^\M8VR\(PL\([XDV/@^MB]D^1Q+OGJE[)FO"1'H+8X2?MU:"['YU.EP?TUB
MS,_HAB3PS9*R& M89*L.WS""@ZPHCCJ.9?4Z,0Z3ULU5MF[*;JYH*J(P(5.&
M>!K'F+W?DHB^7K?LUF[%8[A:"[FB<W.UP2LR(^+;9LI@J5.H!&%,$A[2!#&R
MO&X-[$_#KB,+LBW^"LDKW_N,Y*DL*'V6"Y/@NF7)(R(1\864P/#OA7@DBJ02
M',>_N6BKV*<LW/^\4Q]G)P\GL\"<>#3Z'@9B?=VZ:*& +'$:B4?Z^AO)3^A<
MZODTXME?]+K=]MQM(3_E@L9Y,1Q!'";;__@M![%7<&'5%#AY@?-#@=VM*7#S
M O?8@FY>T,W(;$\EXS#$ M]<,?J*F-P:U.2'#&96#:<?)O)WGPD&WX90)VZ&
MU$_A9Q0()P$:)2(4[VB2;-N3_%W:Z-MLB'[Y^=>KCH#=R:*.GTO?;J6=&FG;
M05]I(M8<= ,25 4Z<)S%P3J[@[UUM(I#XI\AU_Z(',MQ%0?DZ<O'9'&&G,NL
MO*LH'^K+?T\3V+NEVGOE;-P"O9OIN35Z'GTA#/TS6'#!H/G_7T5XJ]!5*\@^
MX1/?8)]<M^"BYX2]D-;-AY_LGO591<>DV-"06(5<MR#7U:F7C7;^OB$J;/IR
MVVK_H>*CK6K*QY!8A<]YP>=<>X(#@!-D@,817JD Z>N7..(JKIZVK"DA0V(5
M0KV"4$][AGE/-XMQ%*';E,/7G*M Z64$2Y6<M%5-.1D2JW#J%YSZQW :Q82M
MPF2%OD"]6"./QAN<O*N Z?5J6Y:VK"DQ0V(58A<%L0OM&4Z\\2,:I$$H*$,#
M(0@7VSMIW:6HEZL%IBUK"LR06 7890'L\KC.?$I82*4)"1!8&66_?D!I9P]J
M_8&VOBDT0V(5:+95^C;K.&SCD/LX0D\$,S2&E<IN[(!8'2]]65-@IM2JQ/:<
MKMV(6-[>ZIGIY<9/2F+:HL;$#*E5B3DE,>>8WO^1K$+I40'=/8Z5%^8!H2]I
MM$03'LF0,<8+%OI9G_@1HH9_IL2HU6N,T9!:%6/I\VVM&=YA]*#M,6AW$TA#
M;^@/HKQ]'I"R+,NV7+M7<[D:=?BFU*K42H]OZUVZES+V8_^FNS<<D&NW;:?M
MVDIL1HV_*;4JMM+ZVWKOGC>V<1A!N/2 U8HR=4O3Z]S3I(U]GX ,B 1;024]
MHZ' E%J57AD+[.-RP9I +M"XW ,RM:Y-7]<8UBFB@5UF _NH<+"[4!_)AC(A
M4\(,+&_-/56O^$1459Z^JC&U4\0#N\P'MM[1[]F0!"=^"'V;Y$6R=2/&(#9X
M%(ANGXO^(V.#\M'0@=W4-T&CR<&46A5FF1ULO>7?-4$:QP!K)JC__!&N7@S[
M0@^I@.R5!- BE?Q,A@$O5SO/U.3#]I<;NV=?]BUYRWFI$#M%;G#*W.#HK7Y.
M;)HNHM"'4$JQ4-'1JS2E8U1MF*OU]EB[_=YE#\Q1P;I*I\P(CM[4%T_ !6';
M(0GI-_"NCU.2TBO6=&GZJL9$3I$3G#(G.$?E!&D1T'T:+Y1&X?: "#C;MMMU
M^I=*7$;S@"FU*JXR#SA'Y8$Y?D.3 %I5N,SSD Z>7K+OM&V[VW<O+24]H[G
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
MWE75;7WUQ<A]>7^]E@:*7OEQRQE492L [S=2FH<O=H+F?R9N_@]02P,$%
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
MR<N"?WAY-83,*TC8%!)F0L)FD+ Y),R"A-F0, <2Y@+!&NFG[M)/%2YE5Z1
M49ISGX/4UMV[KR@J<_>>"/E=LP029D+"9I"P.23,@H39)UUS!]*E"P1KA+^V
M"W]-&/Y?2%Z4=1Q]X*'P(@O]\JDH/_(P?*FU9T=6F')^(O38-2$@8:;6KM-E
MA2G&(!W.>?/5>A2!]&A#PAQ(F L$:X2YO@MS_;5A?OCHP@MY(;AK104)FT+"
M3+T5J8K*!.H,TN$<$F9!PFQ(F ,)<X%@C10:[5)H)$RAZH&D7ZHD ?+3>$V2
MW*OVRLB/\ICP<F?4"BI9D=CZ2>BV:TY PLQ1:[F@W6=R M+AG#-?DL[,EP7I
MT8:$.9 P%PC6B'5C%^N&,-;-)!!LU<J\4#<XVXZR)K.U4;M97U.8*SSEL;!A
M,,U,3C.L&NQ-^Z16<Z.]427I2BOV>#UK-[/;M#[6%,5@JNA3)L/E-,*:H>\'
MT+C"6-KK:U*7:RS8P.1>[YK>W-HS=*::G(@[T?7N!DHS3QO"[+1F<]"^6: T
M&Y3F@-)<*%HS#0YD9OP_;C_6SH"J95#:%)1F@M)FH+0Y*,T"I=F@- >4YD+1
MFJFXEXBQ6",6;45BCL0H#X>M8EKLHG/*@(K!H+09*&T.2K- :79-4U^X]@ZH
M5Q>*UDR&O<*,Q1)SQXU)W%9:^\-1*SM E6)0FEG3M.8(V%H,5"KF3AJ[G6N!
M^K1!:0XHS86B-4-^+P1CH=#U7S8IQ>3.=1>H\ M*,VM:8Z,2JVR:@$JZH#0+
ME&:#TAQ0F@M%:Z;37MC%8F7W-1N6N"W_88/=+)F('7?.#U#-MZ9IS1&P^0$J
MYO(F36=WJRQ0GS8HS0&EN5"T9MSO%5TLEG1OR7J3^2L:]WFYE/C;_U ^7CEQ
M-$HLL_]B*O;9.>1!55W,D75Q:Q<+5-?E3AJ[#%F@/FU0F@-*<Z%HS9#?J[M8
M+.\*0O[%R@E4WP6E34%I)FY+O/V6G 7J<@Y*LT!I-BC- :6Y4+1F.NV57BR6
M>L7R%^^-BTO<UDKUT:%*4^<'J-@+2C,Y0\!8EUNU$ZCBRW,JC;3V4@*J^G*\
M]H=8834=!]2K"T5K1O5>T\6=1%V!X,>/<(Y$JLEJJU 2=J)SA$/2S-.&, -U
M.@>E6: T&Y3F@-)<*-HV6P8';Z*6KV1_]K*',,E11)84+WW0:5!DV[><MR=%
MNJY>3OV:%D4:5X<KX@4D*QO0WY=I6CR?E.^[[MXU'_\+4$L#!!0    (  B.
M9UA]$K1 QP<  "0B   8    >&PO=V]R:W-H965T<R]S:&5E=#8N>&ULK5IM
M<Z,X$OXK*M_6U4Q5/ 8)#,XEKLHX,[=3-9-)C;.WGQ60@VX L1)VDOOUUP(,
M-@AM/.4O"<:MIA_UR],M?/4LY$^5,%:BERS-U?4D*<OB<C934<(RJCZ(@N7P
MS4;(C);P43[-5"$9C:M%63K#CC.?993GD^55=>]>+J_$MDQYSNXE4MLLH_+U
M(TO%\_7$G>QO_.!/2:EOS)97!7UB:U;^4=Q+^#1KM<0\8[GB(D>2;:XG-^[E
MRG/T@DKB/YP]JX-KI*$\"O%3?_@27T\<;1%+651J%13^[=B*I:G6!';\U2B=
MM,_4"P^O]]H_5^ !S"-5;"72/WE<)M>3<()BMJ';M/PAGG]G#2!?ZXM$JJJ_
MZ+F1=28HVJI29,UBL"#C>?V?OC0;<;# G8\LP,T"W%_@C2P@S0)2 :TMJV#=
MTI(NKZ1X1E)+@S9]4>U-M1K0\%R[<5U*^);#NG*Y^GZW_O[UR^W-PZ=;M'Z
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
MWI>K=8</'O[RTS9?N2O7?=R^:^FOAV&4HMRXVI=-G;5N^?.]\Y,?GS[!\_S
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
M>K6FN<3!N:1E^T[0_]ZS!J]%=#TG+LOD!8$1;4FXE8[S!GI>]LH2@%R91O[
M)BC3FS5"I7U+$N7%92/)XS"9B]/R45DC.3,,LR,R9]%'O$+ '.A"E_$KB61#
MIY401%>['0E7_2G@X_3#&.=\[Y T9$S"6[?MGG?9,[)?+#E6I<!T [3AU-&:
MG-3_R$Z.O\DV='PLNHY/OK5/9N:.:WJ%5M[&^7@#2"2(?.R8U97K./\&:16_
MMR3I<H5&+]DSY4>2)S3=M@M;?75AF;1=\ :80"D-)/TW7@^)X=I5$L*N)25+
M3QS-"=WAG! OZ76!:A9NGAKZPV1$3Y,48P)8!!7TJYO:_BQ]\-7E\*>9HSX*
MVXXU3@BD[U-P[B2#30/#\O)R]Y\B^\P[W!]T$, V,0Z!;,TL9%*)Q<IO.D L
MNO@K)D8(@G4J<>) %/W.R1-Z)FKER1WII_U%:B3!0H)!9C4TJE[\ :7R9W3(
MIB%U*R1(M0G0525Y^3WJB$KQ<2W)7,=WG6Q.J$Z^&B,9[+I] &+HV6.[;?T<
M6_S,IA=Q$0P/C%1^UM6RIN.:#=:%K/.(*QPXB5,CJY,(/);+JH$!/9.H*C]A
M B8'/M1\:6+;F5$6(ZNTBB-.L04ZU/*.L@USR5E.'X3]\QV+ =P5FKV#LR7
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
MV.ZE%TO)RK/B\VUV./2>X336+5V*M'A=+\187I3T&(BP"<6Y$6H9<Y@CP[X
M$XT0IFI0LH];+ETTHIQ??0P$.7UT\N3HT0^S[$-#=B'[]M&W5M+R/IWW(LS)
MLUQ8M865MP1ZVRA)FC$,'.YYXT3QX1GDE8,40H1N\IT(%WG=I56"<R72TN[9
M-1OV%J'PV$U(>RBES9'8%=%( D8<%)=; 45N\64QMNP\8Y4[AKJ+SLH>^<-*
MD(RS_A%2WH[;F'N+(<]?[R7!YL[2\@_:1*2-1/UV.KT,PS;0-L6:K$2F5*]=
MQ\*[X RE=RC25.O]\*Q9%8X2HGQ2:XS1A,C6\B!BUL$][X-+NR_?R,4I,^X;
M).>W5=J,!J<LJ(X',+1X88["D17:.W22"#,T,T,SK\D=2:>PM%8Y^8XOJVOG
M'*SS(9AC@I-'&F(C":>L/D_D1B%TTFI':NU LD@5+*.R]DO(["&D&R8XL':[
MBLY"SX$4$WP$^T07^9D%1P_L7A+N)0@6SBFJB0X(0'A</3Q6F*T;K8.O=S3M
M)[G5[:2PY4N&EX,JGOD&L0D^660@H8W%!P_3IIT"QDM TFW;E#67</+3'/^\
M30Q"7P(V3-%BK9%UFD/'NL(N^0GW@N)@6ZL91C::4<E=!7J]Q<(_8"EF,%."
M'&C*8)$RW5>L3WWW]D)11_0^@S3MEY%*P;E$7/F#KNEPL3'$74?OWN=T!7Q&
M34? 9PTV,VT:T:1F1"(QDI]*O8SEX%V-J<P29\/*['H=PW)3@=X@GEUL"]?9
M+(C2H1W02KNYU")Y1+C8<<&,M2@_(\PLH&ZD\5=0JOQ^ F(B[8^SCQ$G*!B8
M!@$)/>(&.?_(= %F#%=:M>G9HMFR1N"58U"CQ["B<D :7/+LN4(IQ%K&=!AF
M93'XQ)8Y4YRHUF7')+#\"X?,0IFO+'O<P&)B[@,TO-@34?7?VG!C45>4^P2$
ML0>".X$SA<7I"R&KQ<07I:VV1LMVCK/7=HU1VY 8V!Q%0D9V*L0AM8T5@Z2>
M#:1Z%8H?]+YEZ(F"H4,?M5A4-FYHD6*PH"J'BI)I$0F!,@U)QP>=,,QS:K%[
M6A!BPTE57L/L;+0LC-,'R\$95D.N&:1)C4/DXHL;D7@H=.!J8LU Q.Q2JF*D
M1B@HVJ'DD6\SV?%&[EO:*O8&28VH2-./6+A;H HCE*0[%/(XUW(A:B#G;%0U
MDEP5]6<3H\1KL?O77L^26[;]_LWNX374P2W4P/FS_9NH@T@#-[DYRW"EGUBZ
M">R.X"6U;NF%G[-0=LV-B!:[P=5EOLI!C$6+AJ'"D<92274U:P_5 N "\WD&
MCP204],>=G'6W$O1:E+HXKM\-0(_LU%1]F %Z7BBP.C)W5ZH--3 L0FQ2Z("
M08(54#NH 9]^PR4+UR[<RE_*O5JK]A43R0(7I3&I7C&V!<4]*(L:9J7#)5*Y
M,63G8^ZX(N!3W=S4@S8 PT,=\Z92#H'[(WFEN@<G.5$'$CL3B%4:P.[V&RO9
M'0#V26):WC!#VBWS.'L6+@.%D$=Z31DNKD#_@4:+]Q%",QK+V0O"UW8T20^:
M,*I5SBU&Y0#A/KJ14,L"ICODU)--N;ZP?CO<&6!SEUJ*2?5&[CSI&)\F!<-M
MM<&%NP@.^7[(!%1D^/H.\!5.S*V8,8DQ)MU-PX5EN9,4.I:-TN?<:XS;/*3>
M88P?/ AJ0\9-T;D5ZNX!]*FV8Q&T#_$L0X5P4@>0S0K?$L0=8\&E#XY8<BRJ
M8&:&.$]W45F;^G)PA2GG[AB%-L0#A+@8>/)CRG^A&;W31E[;=(/ 09![>3WT
M*)6$YO];!S16/MIH35-<XVYHPOU!\8<V;94[CYQV8F3*.C[6"I@Z@-D+O0?"
MIW"OI!>D-69-.#&,J2SX$HX/_3<.RO5([W,DL=]'[TT[ =XEH&B9LCM\+PZP
MF0HXP-%A=E##1S=.->\X&"3P5K87=8OQ$N*P%TD8%[KQ.;++0()TA\Z8E-BD
M9B0QAJ/C*XG'JI)T$-!O.)DWTH^3ERK3P+XG$Z4]JZ8J=P[0JXS]@+_BILU=
M1^,+)#R-L&7/DB:.H45E"+*Q&(8H9-KP4;J+FJAP.QUI%-/#XU4O:=1U2*&'
MX_XT(9<D]4 2/A]ZV,D5M1%] B9*ER27(,+BC]'\]RAX8A>L+_'1* 8P3 <F
M9>=V^S4>O\2EED+IV'^;RP,D>95:!.B1N4OZ$RYCN:((KX#,8%KDGD)WY[7P
MFU"V$\;>[NW-ZOCN2[>3!W:I8,;79O6[4K]S]EWM!C&+I$Q:J]Y*J34:7<R[
MI4DB#9<#,Z@)X1+G_7/"J1O!UM*B*^ 3+C,<UQ>J"M&.*_&.P'!@8U#=U#%M
MQJUSI;!C?-O^,$WB=7O=S'*RW<9WQX\/M=M(ND+RH<&8 9/'%I$)E9. SFA?
M<I;!\VO@5$ANWGLQN;]BFZ2:7'99Y%^H6RQSJBU_1D-HMYP/^6=:U&6XJN2&
MW:8YEC/VIV,I4[QTM]>LTP67(E &-Z'DYJZ86+=!55F[2^ZL^<&EM:G4]H%B
MECOOH)DS84/UUH4HN:85'I:]NEHZR;7L+.SY&[J7U+'B^O_48QIL36(K<12Q
M8RXX*=SQ(%U/E=_XL8B1K9 **_.BVQ&NWH:.[M;<,RU@Y1"]F7TVON$J-6;D
M"%&ZQIP;;<GMM\%F8M8S:> 5-Q7P'YMLTGU3S5G5WHN,\;O<H55K %2D8N/7
MD&%[]N'\OG\0?S,EU'.'*J+\.B\KMM .H_.-V[MN('C5.]H ",/01#Z""$:.
M<J5;/''M4I &Q?@-J9(-5[B3L(/H8(X@+>46)Q\+K5,1S;<T/EM%)ULPB*)>
M4Z[W'O@GB:!'G%.N([U/.]W&SH,LXJJ&_3CQD  C[9YR6]>//,(-N=\H'4 *
M25W&DEL[;8/H FB22'GKT$0-,*>-RE7#L:S6T/ZBZ<)=F-!TW"1#:RNT';_S
M$NPA%N25M$BI[R1"F]2Q)TM38Y$HW&_N ',#!8AE0"".#[9&.%!/9[!-FQGL
M=1Y]/.BB<'[U$3GL;X].'L??UPCC7B;C'HV:.ARE!85\R7/P-6UK<ISPJT;J
M\5E  ^XPH2.X"'+:W:C9 /=T  :;+$X,'3OENE*<3^PZE\\E!:!)"X;#%4M5
MD]=I,>F@%NK&[87CN#Z9>U+06E'/<50US2?P3 D;E".V9'3@@BU6K;;OP5V:
M84S#3I@4?LS;)L=Q"P4@92V_IJ=YW*"LP\3[_1L 2;<-G*A2\9T%G<@><:!V
M%$*+[;&U($GRG!]N:<>!'K8F<!$*1/?K2*TA>WF*E"7FKD7.NXF'\^*?O;!*
M.VB%LPC3L] 7X!3PG?<.$KG7\>,CE#XO3:(0R8G.";T]BLW2,FO"*#;<^B!/
M3#335Y^$5PL77YWN L(AN_!S!K7K!C&H0?VT#'XZ.?C!PNOI4N9SW;C9#? O
M,*TH"U:=TM@UAB"5_(VURYCJ.\H^V40$\JFU++V(M4+_FL8Z/3EZ]'W06-/C
M'J5J$[(:O+_DIRO"9Z]21'A;S<X=&BS\@E?(EGWIKU/<[O5*CR7[_9;8_34M
MNU)72XM1V9:&BY]8GUU7'A01U,-F&.&G6<#3\ZN+[/M'W_PEHA+UMMG0V5>*
MSY7\;I9V[33%FHK._J\:29@TFJ))2_JTP3;"K_N<7SU-?E2/^QNJU#T^>O1=
MZ%FTOYRC['+#X1BM[FOT.\9H]G@:8QG)4HBM)!@IU>GY'"VY<FM.K+U=0BOP
M- REOS$VO!0AW>K*#4 9IWJA<Q" LZ?3R:(CI)W,&VT9O"QQY2$T(_TP%@=#
M=-$]$!\PQG7'7'IRG#WGSM7Y;6(FD?)-V77COD@L>-QKH K>AXL#2CQ!AYE8
M\,C'F3OY*9"!M6KQHWX!8>Y9*HZ)YN$RJ+UEALUN%>[3B9>^=T)\Z!:0'(!D
MSX%.P<%(FFP/[SDUM_0>&#CR7WR6Z'CL'XL?PK$8#+I_(N+77W027+W.^6<0
MAN'&X->R1P1]5J.C:%2# S#-OR^4R/9?(K3?_'N%5F.)0TEU9;=VX:?IHD/4
M_CGYG=K8OTMFIWZM]F'R.\5D*U?\:\R<;ZT[^<GB\&EF/_A\+K]S'!^77XM^
MK0G-RBWIU4?'WWUS3ZH [(^NV?*O'L^;C@PS_Q,_3>E:/$#?+QM"T_H')@@_
M@_W+_P%02P,$%     @ "(YG6",2KG@#%0  ]48  !@   !X;"]W;W)K<VAE
M971S+W-H965T."YX;6S-7%ESVTB2?O>OJ-#T=$@=$$6 IWQ%R#K&VO 5EMH3
M&QO[4 2*)-H@"HT"1&M__69F'2B0("79[>U]L2D0R,H[O\PJ\.5:EE_54HB*
M?5MEN7IUL*RJXOG)B8J78L553Q8BAV_FLESQ"OXL%R>J* 5/Z*%5=A+U^^.3
M%4_S@]<OZ=JG\O5+65=9FHM/)5/U:L7+^S<BD^M7!^&!O? Y72PKO'#R^F7!
M%^)&5+\7GTKXZ\112=*5R%4J<U:*^:N#L_#YFR'>3S=\2<5:>9\92C*3\BO^
M<9V\.N@C0R(3<844./QW)\Y%EB$A8.-/0_/ +8D/^I\M]2N2'629<27.9?;O
M-*F6KPZF!RP1<UYGU6>Y?BN,/".D%\M,T;]LK>\=P\UQK2JY,@\#!ZLTU__S
M;T8/W@/3_HX'(O- 1'SKA8C+"U[QUR]+N68EW@W4\ .)2D\#<VF.1KFI2O@V
MA>>JUY\OOUQ^^/TR8.<?/]Q^/CN_96<W-Y>W-^SLPP5[=WWVYOK=]>WUI?[[
MX^W;R\_-G>_/;F\O/]^\/*F $21W$IM%W^A%HQV+AA%[+_-JJ=AEGHBD3> $
M)'!B1%:,-]%>BA<B[K%!&+"H'PWVT!LXM0R(WF"76L2=R&O!YJ5<L7/@M03W
M =-42W9.1A$E^Z^SF:+K_]VE 4U_V$T?0^VY*G@L7AU +"E1WHF#U[_^(QSW
M7^SA?NBX'^ZC_K.,NG_1J,?^@G79F6))JL#SE4A8FK,/LA(,#+L6D -BN<C3
M_\%/QCRR9+(N66PLI/ )'L>R3'@>"VVP6UFD,1OWQSUV0ZD'*"1LAOF(\1*)
M_5FG)5S"=3.I:C (J\$QR^91QO.$R6H)UTK(*'<\K]BB3FF5'KM(%5\L2K'@
ME&GDG%G_N5TBDQDLE>8+5O%9!K25Y:(EA^#Q$A]%>2#GED +'E%B 2FP4@%R
M9Q=!]N^=T*RZ+P0QF-0E<1 000P%N@P?(G8(FJF6LE9P11T]?_:?@L.:&'X,
M@D>L9B":#:!G-^"0:0RL7O%9F<9:K)ME6MSS,F&760J9B"XJ4%'%LV=7Z3>1
M'!=PK^:DSM/J&)@1[!<PWCB<PO^C,.B'(_APR ;]8!A.V)'^8T ?HB@(IX-G
MM[_R5?'B/5&)I0(J(EW-ZE*A[MAT$IR&0S:8!OU!R'[]QS0*HQ?N_S :!:?#
MT;./9*@A+#?>NN<0^.E/<.TH.!V</B/^8?G303 :(IO3TZ _'&^S&09AV*?/
M(4HRGCQ[)_/%<27*E2?D- I&@]U"C@;!I _Z7<JRTH^>AL!&GXV#41AV,'DZ
M"0;CX8]PN<?0T5]KZ!$8!44?C(,PFL"'23">A,269F\X#:;1^ $33TZ#831F
MI\$HVK;>=!J<CB)C8%#U.(1_Q\.QI[GQ> 2+#4%/D5,;N W& '$0G9ZV6!M/
M(JVO810,HG[+JE:BX0 ^^!+9Y>"643 9MBPZ!8M.)_!L-(Y\OFB=*1AZ,OD>
MQMA574%J8I]$25@,\]O'698NK'VV4TV3:12D&H1H^%7A$9 >@1]/0@'CU78V
MV4H]3\TWC_"\/NHP#(,AQ<2DCYH,P3-&DP>\S=HG.AWXGXV!#L,CG_ID<.I3
M/QWUZ8Y_"R:^%0 S&<\RJ[U=6N[24, J"06I*7 )X\H5!\CJ: 2X<=ACYTR4
M%1B2S4'ILE1:K+2,ZY6J<#$%0M99 D\K *98#^,ESQ>"2B.$#:LPIA?(IEG.
MUJR]7#?LX()(AZ]D#3[!8)44T+'([CW^>PXT*:CH2E2:T7<IGZ49K"BTOS:\
MQ!95I?F=3&.\B@]LL&AYJ!7Y.%#X]/&<K01X5P*H^)[). 8I0,=).I^+$IP6
MUQ"JU\"V9H%4L87(P<DSX#T1!29)>* N8#'KUS5X ;"<T7H0W1 #ZV4*0:*U
M7)3R+DUT 7<B%/R>PH7 2'*GE3FWNK6<8[<2 *0'1%#)7-A5%#49 #:TM6*Y
M*C)AY8^-\8LEW*/P2D,).' DUDN1,V6#"D&.810,8Z&)YVQ 47R#.XFBM2L2
MP^_0\G-LHK17NH#GVJS(&*C\#<](SAOL1(@9<&ED3GRK4*D WY;\#KT' A=H
M)&134&Z);9.]&;Y0P*5%,3O7!MY%>J?15!<#/7:V(84O8;FE@8"<#8!C68ND
M60; (*@Y,"BQBY',<^AN1JYSW3FC!0F.0F!2K@"1&]A:+3GJ"-9)<V-RT9U,
M+: C[7!E4K[:FV2?T9-4\,\A Z)C0I@@Y 4F$H/2PDD038;T"1(GI,!+I0,[
M,7K8?NH0L^!D@/66/HX1>CR[J6?'%:7/L ]E&')FV.\'?<!V;ZQ_>@3ZN&Q?
M4^@/(($C"5L>#QG2#RV&"@8C!!*8.?A,WC4YB&O%936B'-2RR75-/8QYH3-9
MEY7V:_KQJFU'!I2&@!U&A&U-Z1@&4X"<YUW><SC NX?XSPB5,0J&1BW3(#P=
M/Z@4+$2HF$3$I8#L0)E_@R/J9K= (%JCHR2MP;F@VB)^P/0(\8)6,]2Q_)K0
M*J1*6ZH%?Z_NC^\$I$DHL)"%RWM,/W\(='3;L;GB?I'>I3CAZ9&J-G7X0 A
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
M#DWNPG+XG1'?YCUHYMPYH5QB-H%8QEQG#GTX"*+J&#><<2QK)XXT$W!@SAW
MH.!_1*U5]DS)DZNMG[]:-7<;N@T?)-;.&GANQ2NUZ".YF_'H=3WJHU9)5S^I
MIC\PNXBZJ_G?V:WW_^9N/?J^$MSOG3ZN!.]LY']68_VSRVR[H':7SJ8R0A6I
M1:O;,?FY0BWEBZ"S.KI(_+UW@T<PD9-_02PEKG>T+9*6DC)01P.\EC(Q6YI8
M;+S#D, K#JHU2V!1OR,)M%2NGMM#K535$[UCFN@GR4HK@=-;N\R/P.KO X/A
M4SQQ%[Q]FCON<$"]^<;GX#=\AOOY_U\<4L,;X"'KJL.;O5G'F(3.Z1W90[/:
M,AJW);KJTJ:?=G9O"%V878C6] !J.M'\Z"R-&K(IZCVO< CM.4;8<@Q4DJZ&
MGAN\A7J*^5NPZX1;+E?0'8,A\F2.D"+'YOJMK%?P_3M90Q+F.=>H<9DNEL=8
MO,Y!KPL)SC $O&4H0MAP?4XY$0#)C#E)]19*S>HT2^BD$'[7!#\$)7Y-B[(K
M'IOS,QK30#TQ^($@ K<N.Y^;G0)SR-OU4A"<Y<H[Z=S$KR7@=N<V7P%H&#QL
M7 H=&+'U$7&]XG_@0Y;W7O>AJVOC91U3W_:&I.M=&S'=<6K:%8B:K6>[CS9H
M(GGS_ \%MFQKC2/^QOG:1F%,0:RRK LW'=UPGK;]=MG.ZZ;=(52\L#'L6ILF
M6!_V!S<S('N3*=EM<7-@N1/_F6U=LS?FGGWHS+15;]_;V=>O,YBCCG3N.3-;
M+2";W7IOYBX@ S0_<V_#R[-B*6-H4=K[KOX)BW.NENR*SC*GWB%XO*]60F\M
M5_H])OK;S?.(; _S@%Z@5KK8N-MU':++<]K-+WCJCDJ9\Q()3E3MK3$O4JT\
M!H42.@&M;B?"$SUG\P"YU4"3QM!?38A_OQA&A [F9=GPOG$2'FG8C85.+M/\
M3B..%I?MES=<A.X+-SD'.>SF9*)OI0U*"]?MV,O;@#3\47G,!/A;X7C5ISB;
M]A4'3*U36K2W;/="8_/^BV:Y.3;?X-_;S=<5'$^^DMKJZ_!NE[_,$?>-#<Z\
M,R"='F8B2\6=,!OC-BN;TBQG=*]Y<8?&[?HMU;;""YFENDGN%FV;511()-N2
MMD_[[Y%D0><KD%%0>$+Q9$]%-R\1T<E+_0J,0P?6OIYGG=-.JK)0TBP']+TI
MCFXOU<8K)J2S;>F(T$;4>"MZKUX\G <:G5X[X1,]^YYII(Q>>FS=U+ZGAO<*
M]QH%K64.G"4]2,+>ZSX$EX(=)WU]_:/*U5;*]LMT^UR5=^Y&%W9 )NC%?NIR
MY>7(5-:)MP'?HCQH-HN?2'FS0&^<!\(MRN8X1RM6[ DL^Q[?=AHVQ=D;F" "
MZP!Z.G]I%;9>'?FA@X$Z)W5F^ITGO;?;^TVDY)T5T)'H \A-A!AX@*^%M9NG
M<K=-OO<]#4V)CG@<%W592(7S*<C,]W9BP@[-B38\WG"HCLP!-NT[GFDVIKTF
MF7DS+3T;I-AP!_0AV/\P+TEUG*#0Z=^.DV=U]G6)OT>":=3LR5D>:;65E+2Q
MMP]TZJB*3?(Q1SA'&TBS=>QQIQ^;MP;;6=1-:8C^_Y73[3C8_J@C+0^?8^GZ
MI8H3[Z=(5@*$Q1]<H7=2\TK_*HF[RNQONISIGS)I;M<_"//>#,\R,8='^[W)
MZ$"_5F/_J&1!/VPRDU4E5_01_4"4> -\/Y<@I_D#%W"_=//Z?P%02P,$%
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
M>SJ=J*J]<0O( W#'[6J\C=L7TBT0*#IKR_-<%Y7T^CN<6R-/.#=%>&/+ ,(
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
M6 TRSYD$:%=9PGF/&@RL\A5SU^&:XV=JH8VI$3Q-YVED\9BSS[_O'8&WKZI
MA;S>>XVV)GQR^9K_GEB,J%M2)N=H31$:S$:V\MC5OWW_ZJ81]HJQ 'E_=+A/
M+_MX'(^.Z/& 'J=C>CRDQSCA"(^3\>@5W(1.>0ZCB?&T/_EE_.K.ADUT;\:(
M@3>3M^SB_F@THI$=Y$8ZP/IL2Q0EZCJ@QH/,*]64IJ<J%K;"SQ)J O]D;7IN
M95/!^=F1B<;\'B>!)F(:?P\8X67%I9.V >%0O''0=^;!UD'GST.)@<_GBEOP
M6KK9AA>U< +BW*R%2<(%8I&O8D>2)*Y2G6!4CSBBQ++Q&K5XW.J8PL@('3)>
MMUZUY)5J8'**E)BIL%3*/$':;L&0*1H1VZ&[]VY=?I"@_SJ)#M!UN[! 4>@Z
M'@N^ B#8@S6Y ,D:V5VVF]$3I<O J4L3.,8(/^_?5+L[^-[+N)3[N4A4V[B[
MP %)ETP6*?IOE7)=+QK,#<L^5V*#="59J54G:=21#D 64:%&TLMZ;]:(FE^I
MRZ N)O:NG3K8UGGV2--],")\":MW#PJ<#>7FW!ZLVQ-BZ"U^0;!5E-40 88'
M.>24?1Q=6P+T5UL5LNG9B"TB"2=YE>*E:1(:8\3/ZJ%AWOIP.OAKM?M)AFXX
MMV/"F.1;-";N*2Q234>^>5[N(:C6*5;ZNB.*W20E<,A0S?9'1 H)B:S3QH"I
M,#U1"GT-A^T#MIBM1,6=I7I,*-"8%8XZ1PT.5UKO9<ZD016[ZXG:&,^,/\-Y
M@$@3> MYCSB7#A4-I;"N=9$%UC5H)G,FR%T%:&>0</6'F7'>)SS+K":F;ER2
M:W(M9PTX@*YC>5L@[>I^V\1^*9BY4!)K9=(M(+4AH^?<[50I=1KU^@[[H'JQ
MRU/R%KL$AB1X*3KB5!$V0(/ RF%?S\"Q?]24SX/H7F!R'VQR_T%D=HG =WVA
MM\?Z]NXS?!\GA6_KBK1#ZN/OD/I6JFP3ZO]=$M8]Z160T^_9FBG];D8P:HG(
MK;=$ "#EZ)!+O()L+*.CGY]&.J5V$@_?"XAR$-7$Z.H[R[:T_3Y#4+XCXU.T
M%!HMZ[Q61G:5:7C_99T;WH_1N4.U;CD)U*HI.LM-<+YO6]9.ZQN0E['W+>C>
M*U]M-K\A<[9:9'2@0%IR%U)WU2]UZ=/!WF;_0W"?6W,[TM'ZT+N!E"\G?P3K
M6;6H@.M'P1[@O+P!]IOBG@$93&ZDF KK\.<3,%C46/..KW.B.RD"^':6F:R_
M#D=M, +$M=?3IIUU:DZWNC7!:=.VA'4G&-G1<FIU.+)?-Q)H)Z%/:2,=@B[5
M%I%EY+)M(GF%[\>;'2?.:YJ_I4O8 ;KD3M.)-3$EEG0'E7:KP[INS/E4M-<6
MJ'B!T#DGP1,$.#:EW 7S.3&3#]2X*M-!#[:2S\VZ:K#>4H$KZAIZ02ZXHK//
M8-N-Y;!SJXRC[H+OSCW=T9@0+YC;T?9Z_BS>2J^GQ[M]9 #.>5[D:HZEH\'A
M?D^X>%\>7X(M^8YZ9D.P!3]F"O9R- '?YQ:D6;_0!NT?+4[_!U!+ P04
M"  (CF=8"+47@[\(  !"%0  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,2YX
M;6RE6%USVDH2?>=73'&3E%W% A+"0&*["L>^M;?J)G'9B7>WMO9AD :8:TG#
MG1D9L[]^3_=(&&+L9'=?0)J/_CC=?:9'IVMC[]U2*2\>B[QT9^VE]ZOWO9Y+
MEZJ0KFM6JL3,W-A">KS:1<^MK)(9;RKR7MSOG_0*J<OV^2F/7=OS4U/Y7)?J
MV@I7%86TFPN5F_59.VHW S=ZL?0TT#L_7<F%NE7^V^K:XJVWE9+I0I5.FU)8
M-3]K3Z/W%PFMYP5W6JW=SK,@3V;&W-/+;]E9NT\&J5REGB1(_#VHCRK/21#,
M^+.6V=ZJI(V[SXWT7]EW^#*33GTT^=]TYI=G[7%;9&HNJ]S?F/5?5>W/D.2E
M)G?\*]9A[6#0%FGEO"GJS;"@T&7XEX\U#CL;QOT7-L3UAICM#HK8RDOIY?FI
M-6MA:36DT0.[RKMAG"XI*+?>8E9CGS__[?/'+Y^NQ-?IWZ]N3WL>$FF\E]:[
M+\+N^(7=42P^F=(OG;@J,Y7M"^C!E*T]<6//1?RJQ$N5=L4@ZHBX'P]>D3?8
M^C=@>8.7_"M34RCQ53Z*2^W2W+C**O'/Z<QYBXSXUR&?@\3DL$2JDO=N)5-U
MUD89.&4?5/O\W2_12?_#*_8F6WN3UZ3_,!ZO[CYLV[ K=J6*'4B.KAY1W4X=
MBPM5JKGV8HI*2TV9ZEQ++ALS%WZIQ+?N;5?,5::LS(7STE?>V(WP$&*E5\(;
M82HK=)!-PT>JD3VK98-".*Q"EAD]Q!VAG9 .$SG(P8DC74*9J1P6N./WK7\H
M:>O4$D@,5<R4I>1HL122T&*[GNQA6^*HVQ=OZ[\6W 5;.26.,A6>CN&C0]7J
M<B'FUA3O6]<*!5ZJTHM,S^?*JC)5,$>0A..W>!AV(SRT;CW)?W*2%_6[ UHT
M[(Z@C9+,*EKD5>%:=\JQ&J"(/07P1$6G][PK#J*#CM;'I2P7)%L\R+P*V$N"
M1<(66C;I)F%#/ C&W"A?V9*07UGSH)DF"5F#>%G(CX!!U!T'"%Z."AGRE@T:
MD?Q;O2CU7*<28&#7RA LCASX7^*[!I;_9X0_5A;Q\*U?Z^1[(][],HZC^,/3
M4QV79KP9_6H\UJ=A_[/92X5 6Y5M!2>=R6 @AL.36AR0!N(B.CEIW1T,2=(9
MGXRQXDB,DJ$XKO5EM5R11!PL3+R*_QM:^*9>*AJKJ#R17:]'8ZN*)$OG%*8(
M>]3N# 7L-21(OP?L?QN@%X)R^5QSZW>J+0=7HB3!;QQ'K:MBE9N-4HVS3D2=
M9#*AWY-A:YJFMH(,D#)M!+H5 ;7*43\9W"V9HIT8C43<Z8\H+E0[= AGC :
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
M0YA9V]JO;+WN[]1XJZ*.&/3:HM_M#W;H&]2^#UC?X U]3S-IE;A&3F/Q()>
MFG?B*HO%H_+:*KH7M]I%B7$%!/]U-7;> D;_WA:,<-1P^U%46N]=+B-UT4+M
M.&7GJG7YVR^]4?=LAR/#VI'A+NU_*8D[-6^W>]01?_9$<:LF4!F+&T#!ZG'!
MI?B0R$Q\4\+E)G/&"DEUQ&)14RPG,?".4(F>ZG&BA$KSQ"R5<L+/I!?:B1^%
M3/1$8VL!E%GQ5%;[L-O;__Y.F DDE?B0>64SF2"S<Y45"N;$JBT6,QW-A,ZB
MI(BA<VZ2(O.@IOH< :</O'Q9L\L)F9%#:2ZSY0&((9KI;+HN MW:ST1N/$"D
M<;",8TU/<!D#4E;Q#8Y:UQPK&)IR*,9+80HKKHVT,?EQ"TA&WE@G]G_[Y:3?
M[Y[Q([[NG;WKB-O"DAU4'&PA+OJP0ZV.@-9?1;=S#"))$N;$;'.E#:9UN6*N
M3)9MX0T'D%+1$1]--CUXAH$(:$2.S17GTHDO''RR-R$9<H+B6LKD+%.9O;&W
M<J#-!U%80?F2DXB;5'N//,#_53!2N113*U&=D72S@S$7,+FB?A3:+ZN%!60=
M.; %/B2=F>R@3G1<1;==XH%"B5 @<!'%#40<?0?&M*_]>'SZ4ME>';8_-LBZ
M1]=J6)4KR\T3;H=5N!K4F3QTIK"99!L.-;:5$AWQ_':$:N0XCJ-,#;!,<5,2
M&&<%;2$=\) D]$M"M ,. Q\!G+ANGIHJ2<07+(-CR'!NS5P[AFI96JRYTP#
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
MS]-3KQ1O5U!^ZRA":4H3&LBBI&[>FM*NF! E-\T$/4W,V"W05ADS+'+%-O]
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
MALH>H/V5E&8WL0KJ5][X'U!+ P04    "  (CF=8G#\'$!<+  #-'P  &0
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
MYJ<YM3;4SH#.,T4%=0L7H&^6\1]02P,$%     @ "(YG6(*ZME\S*   "(4
M !D   !X;"]W;W)K<VAE971S+W-H965T,3<N>&ULQ5UY;]M(EO\J1&8Q< #9
ML9VC#Z<#.,[17B2Q$3L]V%WL'Y18DFI"D6H6:47]Z?>==5 4'??T8H#!="R1
M=;QZ]=[OG7JYJ9NO;FE,FWU;E97[Y=&R;=<_/WGB9DNSRMU1O385?#.OFU7>
MPI_-XHE;-R8OZ*55^>3T^/C%DU5NJT>O7M)GU\VKEW77EK8RUTWFNM4J;[:O
M35EO?GET\D@_^&P7RQ8_>/+JY3I?F!O3?EE?-_#7$S]*85>F<K:NLL;,?WET
M?O+SZ]-3?(&>^,V:C8O^G>%6IG7]%?^X+'YY=(PK,J69M3A$#O^Y,Q>F+'$D
M6,?O,N@C/R>^&/];1W]'FX?-3'-G+NKR'[9HE[\\^O%15IAYWI7MYWKSJY$-
M/<?Q9G7IZ/^SC3Q[_"B;=:ZM5_(RK&!E*_YO_DT(\3TOG,H+1(@G/!&M\DW>
MYJ]>-O4F:_!I& W_05NEMV%QML)3N6D;^-;">^VKJ\_OSS]=_O?Y[>75I^S\
MTYOLYLO'C^>?_RN[>I?=7+[_=/GN\N+\TVUV?G%Q]>73[>6G]]GUU8?+B\NW
M-]G!=5W:F37N\<LG+:P%1WPRDWE?\[RG>^8].<T^UE6[=-G;JC!%.L 3V(3?
MR:GNY/7IZ(AOS.PH>WHRR4Z/3Y^.C/?44^8IC?=T'V6:15[9/W)DGDEV45<.
M=EODS$M5D5TWQIFJY0_J>?;.5GDULWF9W<"'!CBW==G_G$]=VP#K_>\0B7@!
MSX87@/?Q9[?.9^:71VN<J[DSCU[]_6\G+X[/1K;WS&_OV=CHKS[E;=<87/C5
MVC2T"S>TQH>/DKWORGEVZ4JDTKM\VMB9$/&R@B,Z:.N%:9>F 4YOEYD%*KEN
MZFQA\P9X:9+]_6\_GIX>GT6C3.BCDS/]"MZ& UFM\VK;_VIC^I]T3C_ ]<B'
M==?(IX\SZ[(\*T&BV6J1S66]=8.;FL$DI?F6N=:8$OZ_Z6:X7T=#K>JB*^7?
M>;9NZCM;&'K-K0TR0KO-\-3L#'=EJUG9T13PY#]!)L$MKD#N(9],LB6(K6X]
MP0E7UJ'(@R<G(/;6N6TF&8K7UB!_F4GF9OE\7I<%/3&K@;;5 B;8&/HH,S!1
M[7"5\*V]LR4\4_'2E75="R/@L[J\K*TS)*JM"A Y#3(Q/F<JTRQP$S.@ASO*
MKKI&9))IG.S(9%^.;H[P\0F.@I1T,&QFOK6T,UQX4Q$#P*@R(I"@Z&8PR!E*
M=LN;79NVJ5'K /W+2?;AT_M)?T'K>H,4)E:K\6W\\.WU!1T4W%8#B_R'@34V
M#4Q>;N51P^=%],[@Z+-IYX"1'>Q[V=3=8HG_-4:>1L(40#A'S'P@'',CI!*V
M\6P:,?@ G]TL[7J;-X5G-ORNKDQ6U=7A[G1^MHNZ6=>X<GT1SG=I9TOD")8[
MM _XJV[:?%H:.*0%B1PY)7T_6P)C_][E34M'YK*RAL6: BB;W<*)_Z.N"[QB
MP"RWYEO.W(Q#KQN+:CJBR3R?V=*V%ED>[GPTT*]UM\KAQ.H.=@%4]MN@+T &
MZ(NZFZ/L!LC]J8;U_90!M,CF74,BH; .&,R)2-V[Q<N*V!48LX;ERO90\)_@
M/<A 4O,FE/S9&R5PV$X.;-KR?H$36[AAZ46!/TAR1RR@H]TV>>7R673FL".D
MYM 3<!/HGA2TY# J3MR8DFA83TN[$.F)Y,"U.W,'F]T>WADX>-C]W#1P'/A6
MNZGQJ9WO1+# @@$5$.RY,^4V<"H]="T/>8YLEWD+1(,3[2J47ZFT<'@.N/ V
MVA%H09!#)"$>OC=\TJ\T3 XZ@*0BR!#<_<?KF]^R#\ T"]$=S/X;6!#P?UW>
MX<A5=@62:0J+?L9JGT]A U(C*^I-Q$,H0/'0]S($K@X'1U74YE4+$@?$!\M_
MX7)<^+Q&1HTY[FG$RZ?W\')Z A-^Z8>1EW!*VF[71L/T:$/4OO<NM4.$&2/'
MT0C(>.Y!QO-1>/ Z=Y8X* 9+0RAC=)AA)#0X-IU_/F-UL,43#\ -3G$0H^GU
M'OK2WQ)04WBC,F +8,4:F0/H"$/&V 4%$["%S [60HD:FZ]#=']<MLSO3#8U
M!H1#:0'5JR"=Q2B3F7EPR>']-4*$AM_&?3<%3LG0BKC'0Y3&++I2.%WX@33W
MC0%U*6(=M>FWV3*O%@2P!(H 9(.'50B^O4B4&4[:52T#&X $=HT3+E#1TQ6"
M[\TZND$TIY+\_?GY=9"@(PSWPC/<BU&&N_+B_6(+@G&(U1XT !U!T35Y?/^"
MG+L##3D!-(%@;LN0IX!SV=8DI0U(*4")9.7,FWI%^T=&9&C)@V3Y!B[@$?&I
M=8B9!!<S\D&ICER#P"_26*7-IZJ, S/,2GC$SBU0&T29H" 1ZSAW4'XSVARL
M 0\'&!HD\'1+S*WK.E3Y;8'I6.,/#P]\!1M U(?;@J%(^,QR!]+:PH!3%&$S
M8TEB Z[(;4$[1(85(AT2D0  -K8&4IP/[W-P>E4,2/^J;L=F0PI4<$;IR4P\
MCO4GTAA$ X 5)]$I16A!/XL6=Y3]!A) M1R>=84^@T#.#.0"D!&7">*J*UN]
M#[JKF6>Q/<><(W:K%H<XT)AL_L%?E1]&.?V+(SY\ZUH >JT9-/Y&1Q@6R_UA
ML_<L"DA^G  ZOB7]CU(KN52#<HY%(OJ>+!A3="]09  )?^\LVF$=F2ZK_*O)
MC)\1*??/KF"PR! #[!T"%Z1/$5 B$ZU0<+E \DE,;S2^ (!U1G#.VE3.I,@&
M%:R86GJCX6[AG1@^0K)-IB#Q86#:\ZIV;>;LHJ+SA_?V[0%O'XQ9 WUP8B3$
MSRR07YSY=0+?US 4$55!I.>8(+1B4S1?K\N(\PB:@?Y";;HPA_7\4 !0;)I<
M7P4%L(++7H/A)^LFR0)[HD-1[)29'.YGN$A5(<<05@M3PYI@5KBVL+ZN@G6!
M.0T[%5T$:@W,EPE>%@NWZ"#:@1PBW#Y'1@K>/3B8=8=4)([Q%NMC.1#@'88#
M1;Z"?;HS3\HY6-L@U$LY=5SC'3 O'>"63M6YB*M6,#)*'!9<:+:"PH,_D&'E
MF/"VKP77TF&4))H 8BXLVC3*>0NPPTA<DOU%(A0LY_2IL,["X)G:RI]<8= $
M("T+= >TGG\;8NJ$?7&? B#+LMX05#F+N(HN-&/V:0[$,E,5@#"1!?%7(SW"
M&_$\.@?LVIER?F@KN":$3.!@%TV^&ML, 6TXB4,^"1$0@95Q)9&5#4.0[P)
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
M](!+$!5PV$9'H,0H-';RIO#)LA3,(%R8%S4E<'#\?!-G?#AYBQ;&HH<L^3A
ME!F*O2(W_&=>D8/V1+.U+N]EV8W1M H95/+#0AHJLE$L7NFBI_8^9P0@F[/$
M#=DIJ%@P60Z]'SFY*,] 8VT,^2A@[G:[EK >>8L([Y&?$3V1)<@U4%,FV/D^
MKTWN(MGKN"% +>M\BU(9<5^R =*7DCU,%R(Y[924)/Y!F@%QRBUY!PPZ[\GP
M[>)L@[#C- N)!55P,$F@FF;BG$$?["2WQE=9FO/I>_#GE,;M*LTRI BEQF%!
M@Y.;$<X91 3YS3B>QVX9O>#L-.;D/-H%:4(2W3O.+V\@J8.,T8*CW")'\$C>
M0L]J%'=+X\"$MF4(CN*@,,"Q?)Q1 M,]TDTDO7A[2(G=<W3Q\+$TFGP=R:2=
M9SVA\H10F%4PX#$"J@A[/B"Q,.690B5$'DN(A)/&[/Z3TR#\3D<%TTT+QNGA
M:Y+FF(\/-V%OAM^?'"H[Q_0H%UF+CIZ4@&C\)-S'2A*5@EN(,4$>021Y-0)*
MDL9P!# :1B.73\WWEY-VA#$H48ND0N>85\E'CX$9W U["!G+(< C$X@&)@Z5
M?(<_##M>AC8@228<RV169#1B-%%?'$3)BDA^A-%)[+ BQB2 *?#2W!)\PC\+
M^&.&4=9M%),*N6D4-C;D4#5@@ABF0F$4 &U\=A4[Q6#$==< 1- D1R+*GO/1
M[6WBY1)?^RO/3BZ"-#HL^H$IYP6]+.JCPRF(R(X"<638^[R':,N>HBQJDEQ0
M'^SN5:_X;._A[Z.$;]P]"W6,NA<TS=0L\W*.KZA/G(LK\F_$AQWP0W#W45H+
MV2\PMIMO@Q\]V@[*KB67>Z2YU'IJRFP826/GY<,N2V)>YT&4^HC&_>0C3],[
MD$%[R!>^'Z@ >'&/<(OW$(/M_FY&95JH^CH9K;IZ)<F'OZ+/"-=UDP^GD?Z)
M832Q<:D?(C2E,Q!AM&OZL%DYRYMF&[*=D+,CDX]0/=DT8@E'M'UZG^(86-$H
M'4-YV<EX9=@;M%)G-E@WYVQ7\P=O^6(.$O8O&!=S[.'&8I *68.]/2A,U\21
M2/)"QQ%+I"?,&45R5HFWMT#NHUK%%"ZP9C Y*TA/=.4 _4^?9QAX=]E1=M7
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
MR>#HU/C@OE(>)Z)/VMCA,#"1"Q"/<#UWUF _B72UB5V6] :GF_M.&I%3B-4
M^??F7+U.UT(2FECXSO6<-36:U#JRHG2+J'8>^">PH$,O--<7?H[[W8?^P\3B
MH@E</RP4P5;I 3;6NRH/8)#KNKF/5<&!Y9"[KK<M\?T@32(N;PRV4D40V@3Y
M+LYRDJS8+JEN?5&9_TT4Y0Q)PI%?+#*.77%P!'G)C;ZJ>XG01 4AT=)$7T4R
M__D]4#L1@+@,9(A1@1\Z5)R.MY78U^5F4/B/#C6<C[IO_#W)H0K\I>_-3H_T
MITG#G?.;+Y@%\>+PY&GX$3<_[F4T[F&O_\]AG!U+!?C)UT#ZP7'\3V>*ST!=
M8NA0 5B+1B9+)-/K2T/M?Q \#V;:^M[B7)L8YF/X0[F@4<)UU*UG?_I=6>=5
MG+R=)/9MS(Y#E^H!J'T1K!4S@@[+NOZ*9R:$]0(<MZ1TH.Q#$O^Z[Z1P+O6*
MJ13@U*%I4^<H$GP*D:WX-Y0E$\ K%#_Q;JL?M"76-9KA5F"PNBU!9Y*KO^>$
M#3_D(=EU'"F_'>G<A-WVE>$"7 D&_*%H;/(3B(G#41LI*M@./)P7_^SXJ*17
MI9<7J!YG\@*:E=2/I$6.W&D.]045$RV-_5B1U,D!Y!Z'MJ29MHMFG*&_V# P
MT41>?>9?+4QX=;AA%#E]_2]"5:9-O)A)O0(/?CHX^-Y"A^'2@7/9N.HV/#]_
M:(4M2+QS"_K@Q!;RU]I9::A#.EGU S[LU]I<_2)DF_TYB75Z<GC\HY=8P^,>
MQF(3>=6;[=&O?_G//L2H=2SKZQX)YG\FUL=;O_<'OL;])MPW4'^&+_2ICQ/W
MQ"*5S&K2][[*&]>G/1*2-)0J;53D?V$/S_3\YB+[\?CY7\(J06ZKGI\\D'UN
M^,=9I;^X"M:8=79_.I,=[4$5#6K2US5NP_](X_G-Z^B7FZF3L'#=T\/C'WQ[
MN]WE'&:7*W+H27YH+=\1CM3'8R]=CY>\=R["<;%,SZ?89C+7GU&0-F#^1TMB
M1Z;\D&U:A,1]8>T*@2,E"Z#,01>N/AU/%HPU^<V56G[<8&ZQQ,BW*K_MLX.B
MSF#"L)T:(@/]4WIVE+VEW]C(Q]B,8RTKV[;]%GK$>-3@I/06D@D#LMM%AAE8
M<,\.FQK^T;)$6S7XR]$>!>]H*O*JY[[R6]]2Q:8EQ+MTHJ7OW!#G6Y1$%R#:
MLZ>3-X*BGP-)ZPKKD88GB;/AN^\27(_=:_&3OQ;)H+LW(GS]73?!5,N<?K I
M=5A[VYNL-I1G%?;N#F(P ?ST$XT1;_\E3/O\W\NTX@1..=78=FG\[Q\'HZWY
MU_AW:&/_+IX=LMF>4"OO-WF;OWH)NG)A+DQ94L2^ CL+77?^4S1Y,5+P\_GI
MHR?P9GC\U<LUH*^/$A(OS1Q>/3[ZX?DCSB/1/]IZC4-B"08H9OHG_OZY:? !
M^'Y> YJ6/W "#.S1\E[]'U!+ P04    "  (CF=8P:W4:+<(   T&0  &0
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
MZO\)-Z"*+) ;"]CJC1*XD^OJ&WWU8-7&?1>?*PL^=\.5X-!$X )XOU!@<OV
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
M%OCK$YHVX/M:*;M[( 7]?^3EOU!+ P04    "  (CF=8HJH[L&D#  !J!P
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
MDD(INS7)&6P0=&2_;M*:8=JUL7_8H\W'KH(K-7.R%"9+/7GQ*.PJ#8[4S#0
MP! 4#E WLI[-+@@A8=>-EC"IZ( 9 2L(SA7G9@S^%TSY.,=[&+U0CM3,? #.
M$.'+KTZQQI6:F08 &X)" ^I7V3<BZWZJX_)3AP]00G JZ;AZ$@[@78Q>3T=J
M9D* ATCDR]9.L<B5FID& "."0@=JZ]AR&@Y5]UN4+6SP-$R!5BA.*W?U5-.%
M;LSZQTX7]2IEJ^!.K[8ZJZR0@.N-7197:N;L@8@H\>1.ZI257*F9:0!6HBB$
M8.X\MC20E0D>==QI"8M4NP=CM2?@"\7Q!;7G1&S NQR]=#XV9RA@%.6^'.R4
MGERIF6D >J+X;A#F8-&S)I&D9^!^E B9&/ OX S%<>8E_TX"!+S/T2OG@Y@H
M$!-5O@SLE)-<J9EI $ZB^,819N"H?PHF,>M^3[.$122.!G8-** +Q='E0W)?
MI(O#ZKP:$ISNY[A2,TL @$@L]%4$<,I*KM3,-  K,7SW"''HL:5AO3CDLN-0
M2QB/:!S;'<H 7QB.+R\Y="(GX+V.7CT?^T#LK)#EK9+EMI3E Y<8X!*;7,TZ
MMC1,3,49 APGT _C+&0#IUD&!,-P@GF%B2?! M[MZ.7SL3O$ *>8K[H7<\I,
MKM3,-  SL<FU+]8O:TE!2-?$EN(7E0/?UAA #'NI^I7N_DF*Y:LY =<;O2H^
M]G@8@!+S5?UB3G')E9IYN0#@$I]<_^+]PM8%"SGI73'0CU-2$;L].1 ,QPD&
MM>=$2,"['+MTKM3,! %(<5\U,^Z4E5RIF6D 5N*3:V;<4@RS.K@?ASCX[%H<
M'%\^I-_T\F)7@X)N+PG;9VEU41O9/E:G&SRNU,R9 QYQ7^4Q[A2 7*F9:0
MXI/+8[Q?'J.41-T"F26,1Q&5 ]8$)N$XDPQ:LSZQOG3A 2X]>HE\[.1P@"#N
MJ^+%G=*0*S4S#4!#?'+%BUM*6;U"KBUHX$N6 #81.)M@)AU="</[&GTYH8_=
M'0%L)'Q5PH13 G*E9J8!"$A,KH2)?HG+4D>P1 W7$00@B<"1!#/NE U:O+O1
MB^9C4T< %0E?-3#A%)%<J9EI.+L@>G(-3%BJ6R0DW;TM2QB3A Z==H%:!$XM
MZ&EW[)X!WM?H-?.QDR. FH2OZI=PRDRNU,PT #.)R=4OT2]K6;]Q6>*&OW$)
MP!B!8\S7=*N#=[5G/]5V+=)D4[9'-WE9U4N5;N_W19G<;^Q#=[JMXTK-O.$
MT$GZJH))IYSD2LU, W"2G%P%D_WR%J$BYMVSK"4NBF(QL/LJ@5TDSBZOM>H4
MUL6['KV&/O9W),"4]%4+DTZQR96:F0; )CFY%B8MM3 5D^Z-"I8P%?.AO00)
M)"-QDAGAY"GPB_<^>A6]W AV=B>8MUO!W-X+Y@.D)("4G%P2D_UB%XM"UJV)
M6<+JD_*0EP%M)(XV[5V[UF$YW>UQI6;.$C!)^JI]2:>0Y$K-O"41($E-KGVI
M?DV+QBSNF- 2Q04?0 ,%U*)P:CG<.O[R1BPN,W8Q7*F9DP8>4KZJ6<HI[;A2
M,], M*,F5[.4[0ZP_JT'MC I!_:T%/"'POGCV92C8137';T\/G9M%+".\E78
M4DXQQI6:F0; &#6YL'5L>?X  1Z2[L6%RE+^$G+@^[\ZN\L<YXIGDT[A3%QZ
M] +YV*)1P#'*5UE+.04=5VIF&@!TU.2R%MYR]#SCGNNIY%T<G9\]>V:KBU7[
M2)XR6.3[K#H\=>7T[NFQ/^_:A]UTWG]/WMX<'MX#,H=G"7U*BE6:E<%&/]22
MX9OF1%$<'L]S.*CR7?N$F_N\JO)M^W*MDZ4NFH#Z[P]Y7CT?-!V<'I)T_7]0
M2P,$%     @ "(YG6*0I*E80!0  K1L  !D   !X;"]W;W)K<VAE971S+W-H
M965T,C<N>&ULS5EM;]HZ%/XK5NYTM4EMDSB\E%Y ZF#5)FUJ5;J[#],^F.0
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
MU@\.(@XAJI)&O4*"6M H(33X_?3@ )U&L8$-A]?XU0;>@6U:)F9D!,JUMXB
MW$XXFU';,17R?I5A\T!,/K'4QN%NC7%)3VG>4E^O$9M<&4CUMS*G<R+-<B+V
MN+G0&8V@Y^%YHD$MP M?OZJW:N_*7#H2V(YGS<*SYB'T<+=&HZ)&J:W1"AY.
MSE+\C^1,L!_H&-8@K"+0VII&4SD7V")8Q1SB"@(H6\9EEN4\6HZ'/5 78:OK
M+[9]R",Z6Q&-ZE/,CKSS0M[Y7\GCF\8KDUC&/G_-VVWVU>?\]V.":KN<?ZO@
MWSK(?YRP[)&J4DH',_^T!H\$MB.R78AL_R]]VSZF9T<"V_&L4WC6^=?"IE&D
MYFA5M GE$IM:'VS2SEX+UJK-9V6^'U/?:U-_ZS.,O&;N=J*1"IX6^?>EF"TN
M0)?NN_]LOH\7H_P>\P23WZINJ)HQH0F'*4+6JFUL/Y7?5/*!D9G[V$^D07/<
M8X*7.U V ->G4IK-P+Z@N"Z&/P%02P,$%     @ "(YG6!<9K!ZF!   YQ,
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
M9J*4".6_1W;-HJA4DG[\J$4'S9RE8?OSB_K'*G@9S+<P9]=I]!>?B]758#1
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
M^8M:Y(^O$7GWYU^NAI5:F08Y3+K$T2:Q?R!Q0.Z*O%J6A.9S,;?$4W>\YSL
M0_4M;+\*_^6K^.@[B5^*Q_=D-#DC_L@/+"LT=8??Q<]D-#X8'1V+EN])X!T,
MI^[P2"3.<.8._UN=J_#1P7#^\]E]QT@$6U$&+2\XP/NLGI._+X@ISF?R[_:-
M3Y7(RO]8UO+CAAK:J<U&_4.YCA-Q/5!;[5+(1S&X^<N?O,GHK[;11L(B)(PB
M80P)XR"8(9IP*YK015>_H*J6C4KF<25LZG"&]U6'>UVVOZ?F%Q':!(%<&8J$
M,22,@V"&(,9;08R=@_"UED+)85;D\]*F!V=T7ST@81$21C>P20MK"M/'F[$_
M'C7_KH:/NP./S,I!,&/@)]N!GS@'OJU>TKRL9*V*YNI,/:Z$2E,1J38-1#W.
MK()P4]<RS9-TK6JAID+:(M?Q<SQ;"?4"\<9$?*_;!?+F3[,*\6K5K(,MW]29
MKZ]FD#"*A#$DC(-@AJ[.M[HZ=RK@7LA$C:7:0R/%@JQE\9AV>V3?ZU25*F0A
MBZQY/1%B7JJ7$Z%VLQJM$/$C$679A)7QJ@U7^XTKH@1T8++:K(DWVOG9CMZ/
MS5_LU+FZ?06$A%$DC"%A' 0S!'2Q%="%6T OTFB%8E&"EE)5J+V\;T*KS":2
MBU>;]HN19<L^=:Y57YT@810)8T@8!\$,G5QN=7+IKER6A:Q^;>8I<B]%EM89
M86D>YXD@MU+&^8-HYA2;(IS<OC4-$A8A810)8T@8!\$,V7@C;>:,3K+CW&%!
MNH'2(BB-0FD,2N,HFBF>'2?0<V]UFAEHOE<LOUMOBQZ;R??1S>RM'"0MZFB>
M9Q11HS PIT<*S<J@-(ZBF9KPM2;\GYV)UMU,M-C,1%8Q.&&]Q8"D11UMMUCR
M0TNQ1*%I&93&4313#=J6]9P&WDUY4 WDC'RILYF034&[L]]K50G4IH72HK?0
M=BV 2N2=!Y U!R=6SX8)0*JE+.J');F+9;(\:/5#/Q*#TCB*9BI0>[R>VUC]
M4J@YZ?9!BH,5L!O06UU(6@2E42B-06D<13-EHIU?;WR:.ACJ"4-I$91&H30&
MI7$4S12/=H\]M]'[MCH8Z7).H;0(2J,=;;^J]B_W#B= LW(4S=2$=GX]M_7;
MLPY&.I93*"V"TFA'VZVJ/?_<=G0)FI>C:*8<M(_KN8U<+G(A59'W.8UGFYGE
MB"_GYO56!-30A=(HE,:@-(ZBF:K1KJYW>9JJ!.KJ0FD1E$:A- :E<13-[$W3
MUJ[O=/_>5I6XF7V5 Z5%4!KM:/M5R62R-PU!LW(4S=2$=FS](XYMKZK$#>LM
M!JA5"Z71CF;TO-AJ$FA6CJ*98M!6K>^V:C'FG#M);Y% +5PHC1[Y.G=,O;:=
M_6=LO=OZH5:;YH,]N% O&$4SY::]8-_M!7_*RUJVZGHY--VT13D+8VO3E3M-
M;\%!W6 HC4)I#$KC*)HI)FWK^N%)*F,?:O9":1&41J$T!J5Q%,T4CS9[?7>?
M[_VV,5-MLP]O9Z#6+I0606G4?]WQZP76\@?JVMK2[CE!Y@!K0]9W&[+WLLC2
MLBSD,VF/__R/'#\,Y$;V'FZH'PNE42B-06D<13.%HUU;__PTTPK4OX72(BB-
M0FD,2N,HFBD>[?'Z;H_W;8;+AKG7MSW:ZSB:NE/WE@34P(72&)3&4313$MK
M]=U]N:]/+"G+6LS/R/;<$*LF+E]W'HVL?=KN]+UE ;5FH30&I7$4S3Q955NS
M@=N:?24+M9%(BWF:O!2D-E5T3%>YM!&%.WE?44!I%$IC4!I'T4Q1:&\V<'NS
MKT2Q:,[M$'GRW)X\]#,*<2?PQK9BPQW46RU06Q9*8U :1]%,M6CS-G"[C:_4
MDNV>S7Q&RBJ6=I$<XW9GYA\Z$7GJ!O06#-2BA=(8E,91-%,P.U=(<-NOQP0C
M<MLU-3X>I6JY!!=6N6 OBX"]+@+VP@C8*R.<PF -M,$:.#VX&R:D?";WLOBO
M2.S^F!O0=Y\72HN@- JE,2B-HVBF3+25&IRF;S: FJM06@2E42B-06D<13/%
MHVW:X$C?[,[U-DA9SYI-37,>\SPMU[7]+'<WL;=NH"XME$8[VGAG=R\<3VRN
M/#0O1]%,36@'-G#WS;)X)M.DO6R8=?RA1BN4%D%I%$IC4!I'T4R-:*,UN#C-
MI /MJ872(BB-0FD,2N,HFBD>;<D&1RZ5\(9)!]I."Z5%4!H-7CO/DTOKG .U
M8U$T\S)PVHX-W7;L7?PCS>K,-O3NR+Y##Z5%4!J%TAB4QE$T4Q_:F0V]D\PW
M(;1_%DJ+H#0*I3$HC:-HIGBT41NZ#=7/HJHVC;3)1CZ+3CY6Q4";:4/+%0RL
MQQ$C:%X*I3$HC:-HIAJT"QNZ_=*[-#\XU4#[6J&T"$JC4!J#TCB*9NICYY*T
MX6FF&J@9"Z5%4!J%TAB4QE$T4SS:C W=?:W]IAJH QM:>CD/3#50=Q5*8U :
M1]%,-6AW-72[JY^GV\V'=?RA3BJ4%D%I%$IC4!I'T4R-:+<U/$V_:PBU8:&T
M"$JC4!J#TCB*9HI'V["AN]^5"5&2(B=U/I?Q4TYFA52,-'\HCW:]NLF]]0-U
M8J$TVM'V3S,>A7N&&C0K1]%,96B/-71[K/\HJGA%BKHJJSB?*T6055N:E+HV
ML:H"ZK-":1&41L/7/JMG/>$8FI:C:.;=%;3/.G;[K+H^G1[4@!O15P-06@2E
M42B-06D<13.%H@W7\6D,US'4<(72(BB-0FD,2N,HFBD>;;B.CUR!]BVGX;B9
MO94#;9&%TBB4QCK:?GGC[=UX@J.R;C0QW+E]72;D0WMGPI(D19U7FSO9;5_=
MWOWPMKWGWU OOKEUXETL']*\5 7*0H6.WI^KG7:YN1OAYDE5K-N;X<V*JBJR
M]N%2Q',AFP74^XNBJ%Z>- FV]X2\^3]02P,$%     @ "(YG6.-Y&6BC @
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
M<FMS:&5E=',O<VAE970T,2YX;6S55EMOTS 4_BM' 2&08&F3WAAMI'9E,&G
M1-EX0#RXR6EC<.Q@.^TJ\>.QG32THXT8V@LOB2_G?.?[SO%MN!;RNTH1-=QF
MC*N1EVJ=G_J^BE/,B#H1.7(SLQ R(]ITY=)7N422.*>,^4&KU?,S0KD7#=W8
ME8R&HM",<KR2H(HL(W(S02;6(Z_M;0<^TF6J[8 ?#7.RQ!GJZ_Q*FIY?HR0T
M0ZZHX"!Q,?+&[=.S@;5W!C<4UVJG#5;)7(COMG.1C+R6)80,8VT1B/FM\ P9
MLT"&QH\*TZM#6L?=]A;]W&DW6N9$X9E@GVFBTY$W\"#!!2F8_BC6;['2T[5X
ML6#*?6%=V;8\B NE158Y&P89Y>6?W%9YV'$(VT<<@LHAN.,0!$<<PLHA=$)+
M9D[6E&@2#:58@[36!LTV7&Z<MU%#N:WB3$LS2XV?CF8IS3=$)O!)$JY(E5N>
MP)2J6'!->8$)?,A1$CNEX 6,DX3:-F%PP<MU9)V>3E$3RM0S> R4PZ=4%,H
MJ:&O#4\;S8\K3I.24W"$4SN =R9TJN U3S#9!_"-P%IEL%4Y"1H1IQB?0-A^
M#D$K".!Z-H6GCY_!#<8IC1D>8'CV]WCA%J^!9UA7(W2XX1'<"QZ+#&&FB4:S
M531,"",\-B-N1X]-77:R;TO$A"HD*IAL;#<7RHR_D:+(E2E.S(J$\N716GZY
M-/'APL127P^5J23;.4S6GB^G*B<QCCQS@"B4*_2B)X_:O=:K0QE](+"]O';J
MO'::T*-+2N:4F;SAP>58.O><LSWV5E$8!)U@Z*]V!?QIU7G9Z?9KJSUFW9I9
MMY'96"E36)KEA$I;\8/\NG]&'G3NL&L,\X_I[=4B>HTBS(&J-R]NT.TF.$<I
M-X=D-(+<=SD]$-B>WGZMM_\_;=/^0^;U@<#V\CJH\SIH7$?OBVR.$L0"5M5:
M6MBU!+D4W\RUK^!GTYD]*<&[.]OD[A9N#']?<?[.K9NA7+K'B()8%%R7%W ]
M6K]WQNZ:]W^;EX^E=T0NJ:DTPX5Q;9WTC0A9/D#*CA:YN\/G0IL7@6NFYLV&
MTAJ8^840>MNQ >I78/0+4$L#!!0    (  B.9U@]^,J1<P,  %D+   9
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
M_KC$7AVDF8#?YT+HEX%Q4'7_X;]02P,$%     @ "(YG6*=9RXE;!P  ?#4
M !D   !X;"]W;W)K<VAE971S+W-H965T-#8N>&ULS5OM;^,F'/Y74'::[J1K
M$V,W:;LT4AMOVDEW6]67NP_3/A";)-;Y)0.<M-/^^(%Q@AT34D=D63\T?H$'
M?@_PX_< 'JXR\IW.,6;@)8E3>M.9,[:X[G9I,,<)HN?9 J?\S30C"6+\ELRZ
M=$$P"HM,2=R%O5Z_FZ H[8R&Q;-[,AIF.8NC%-\30/,D0>3U#L?9ZJ;C=-8/
M'J+9G(D'W=%P@6;X$;/GQ3WA=]T-2A@E.*51E@*"IS>=6^?:]XH,18JO$5[1
MRC40IDRR[+NX^13>='JB1CC& 1,0B/\L\1C'L4#B]?BK!.ULRA09J]=K]%\*
MX[DQ$T3Q.(N_12&;WW0N.R#$4Y3'["%;_8I+@RX$7I#%M/@/5F7:7@<$.659
M4F;F-4BB5/ZBEY*(2@:GOR,#+#/ [0S>C@QNF<%]:P:OS. 5S$A3"AY\Q-!H
M2+(5("(U1Q,7!9E%;FY^E(IV?V2$OXUX/C9ZP"PBF#<D R@-P><LG9T]89*
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
M2XK+.48A)B(!?S_-,K:^$05L/K@:_0M02P,$%     @ "(YG6+DV9Y-'!
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
MRC"5E*<@<#5USOVSN=\S!G;'9XH;N3<&0^6.\WLSN8JFCF<\P@1#92"(_GO
M.2:)0=)^?"M!G>J=QG!_O$7_8,EK,G=$XIPG7VBDXJDS=B#"%<D3=<,W_V!)
M:&#P0IY(^PN;<J_G0)A+Q5EIK#U@-"W^R6,IQ)Z!QFDV"$J#X&>#X3,&O=+
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
M3*IFTMS&JM\'KB>H]S/&Y&J@'53_(()_4$L#!!0    (  B.9UBR4IWM]@8
M #,L   9    >&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;+5:VV[;1A#]%4(-
MB@2H(^Z-%U<6$,MU&Z!! SMI'XH^T-):(L*+2J[L).C'=WDQ5^0.5Z) O=@2
M=79X=G8Y9V:XL^<T^Y)O.!?6USA*\JO)1HCMY72:+S<\#O*WZ98G\I?'-(L#
M(;]FZVF^S7BP*@?%T13;MC.-@S"9S&?EM8_9?);N1!0F_&-FY;LX#K)OUSQ*
MGZ\F:/)RX2Y<;T1Q83J?;8,UO^?B\_9C)K]-&RNK,.9)'J:)E?''J\D[=+E@
MM!A0(OX,^7.^]]DJIO*0IE^*+^]75Q.[8,0COA2%B4#^>^(+'D6%)<GCW]KH
MI+EG,7#_\XOUVW+R<C(/0<X7:?17N!*;JXDWL5;\,=A%XBY]_HW7$V*%O64:
MY>5?Z[G&VA-KN<M%&M>#)8,X3*K_P=?:$7L#D-,S -<#<'< [1E Z@&DG&C%
MK)S632""^2Q+GZVL0$MKQ8?2-^5H.9LP*9;Q7F3RUU".$_,_MCP+1)BLK7N^
MELLC<NO"NB_7-/S.5R]7K=LP"9)E&$36^Z3:/,4BO+[A(@BC_(T<]/G^QGK]
MZHWUR@H3Z],FW>5!LLIG4R%9%O>:+FM&UQ4CW,,(8>M#FHA-;OV2K/BJ;6 J
MI]?,$;_,\1H;+=[PY5N+H)\L;&,"$%H</QP;Z)#&Y:2T1WKLO;CTCF_3K'3]
MODO__EW"K?>"Q_D_D/,JVQ2V73STE_DV6/*KB7RJ<YX]\<G\QQ^08_\,37PD
M8RTWT,8-U&1]?L>?>++CT!RK@4XYL(A#3W/$D.VXL^G3/GL 1C'!=@-K\6(-
M+V;D]6N6YKFUS=+'4%BO(_GE#<2Q,L+V;GZ!D&^C#D<=YGH^@QDZ#4/'R% ]
MLV&R3&-N8.GH+#'S/-)A"< (13TTW8:F:Z1YP^6ND2&C"M?)R@KB8K]_KR[P
MKU*)<G#Y78T-HX[3H0R ;-^#&7L-8\_(^%,J9( +\IP+,'!YVCT1]BCV.M0
M&*'>W@Q:Y/R&G'_DJC>1^C_Y,7L*EQQD:S0W-%*,9*PU<V0KD;+/&#)KXR-Y
M8BQK;5?LZ34Z-6S6(_<WGD\8[6Y/ .:YI;1!VQ-AQ0P/WZ"WP4,6+LMU BD;
M30Y>FI&LM1V@=!V=4]C1J,H^EK6V*Y2VHY/%O1[9VGZ^3;OQ'8!1#_M^SRY5
MZH[,\@Z'T4VX_19D*Y"OT=[@=1G)6GOV*G- SCFWJ#$O&>R*D:RU7:&R$V1.
M3TQ;5$\N+HA-43<!!7"NXZ*>+:JR$&1.0Q:R_ F37;$Z]6Y-$[B0,MH9O!XC
M66O/6J4WR#_GUAPUVQG+6KM<5>D.-N80IJU9CVPEEU!M!.$,Q1%6^0<VYQ]'
MED=83S+ ^@C ]1=(6.4B^-A<Y&")5%LZ6"-!N/XB":NL 1NE^/0RJ;9[H$Z"
M4+V%$E8"C\T"OPBV85$LE?Q6H=AE<!&"=1G'GJN1U%'$]GH*)JRT'INU_E ]
MA_7J'"SH()RAHL-*CK&YD@<CO<Q'!M=ZYOL,#7]C66M[12DS=L^H!-@H^X-=
M,9*UMBM4*H#-J8!)"?0V U3M 3!#M8>57&-S.^)8'?"!1\?5@RL 0QB[,$NB
ME)28E72 #A! ,6T?^QVF ,Q#F/805;)*S+)ZL@H074"1C[L!%D)1OR=^$26S
MQ"RSQZH T;634=KEJ(-DPM+'<:_;;M;70R) =($D&/G=1 6 8<]&??24D)(#
M0CI$ @YT4\RW&OQR8"1K;<<H\2;LG*])1JW:Q[+6=H5*$X@Y33"H -%;]U W
M!8 9NBE$234Q%]%'J@#1"V5D([>K50#L KM]L56)*#&+Z! 1 'KW-F,:41U&
MO5ZB2E.)65-/%P%=/@FFFG0!*$()S)HJC:5FC3U6!*BNG!B3;B8 H!S2QU')
M*S7+ZR$1H+H^RFK9Z:X[!+,9Z>GX4*6C](".#JH##,U*\WV&AKVQK+6]HI2;
MGK.?3D?MIX]EK>V*O7?EI[\LAVIGO5<)P/I[E52I-!WE;3D%7I<3YCFXRQ+"
MV:RG74&5@M+17IE3Z&6X3]QNN@KA7,9Z1( J2:5F23T8J@ M94P+HP!*QM&>
M]A]56DI/Z$W+H+1(,_F0!@+>HJ/VJ<>RUO: $FEZSCXU';5//9:U]D$9I?SL
MY#XUTV7\ B%D=[8I!'/<GN8$4W+/S'(_X'%G0*/:]?UN @W!/(_U)-!,*3\S
M*__)*1\#JF6M:(5 O9R5+C-S17ULPL?TDMGOYJ0 !O6U?9B22V:6RT,QE.E'
MQQ@F2%MT'49]W^LZ<+IW_#+FV;H\E9I;RW27B.J48G.U.?GZKCSOV;E^C2X7
MU?E59:8Z3OLAR-:A#+01?Y0F[;>N=%A6G5"MOHAT6Q[R?$B%2./RXX8'*YX5
M /G[8YJ*ER_%#9ISPO/_ 5!+ P04    "  (CF=8^GT*<;($  #['   &0
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
M*A19%8JL"D56A2)KAB)KAB)KAB)KAB)K]I^ROANS_.OWUNTUK779'/)9]W'
MY!-02P$"% ,4    "  (CF=8!T%-8H$   "Q    $               @ $
M    9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    (  B.9U@&T273[P   "L"
M   1              "  :\   !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4 Q0
M   (  B.9UB97)PC$ 8  )PG   3              "  <T!  !X;"]T:&5M
M92]T:&5M93$N>&UL4$L! A0#%     @ "(YG6++[E?!R"   @#4  !@
M         ("!#@@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4 Q0
M   (  B.9UB4I/^X70@  #\A   8              " @;80  !X;"]W;W)K
M<VAE971S+W-H965T,BYX;6Q02P$"% ,4    "  (CF=81QO.(^P"  "S"@
M&               @(%)&0  >&PO=V]R:W-H965T<R]S:&5E=#,N>&UL4$L!
M A0#%     @ "(YG6%!HO:@ !   NPT  !@              ("!:QP  'AL
M+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    (  B.9UBU;>-+! <
M '<^   8              " @:$@  !X;"]W;W)K<VAE971S+W-H965T-2YX
M;6Q02P$"% ,4    "  (CF=8?1*T0,<'   D(@  &               @(';
M)P  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%     @ "(YG6!@3
M'V[-)@  $GL  !@              ("!V"\  'AL+W=O<FMS:&5E=',O<VAE
M970W+GAM;%!+ 0(4 Q0    (  B.9U@C$JYX Q4  /5&   8
M  " @=M6  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"% ,4    "  (
MCF=8^:YD[#L*   C&@  &               @($4;   >&PO=V]R:W-H965T
M<R]S:&5E=#DN>&UL4$L! A0#%     @ "(YG6/=.4E0T"0  P!@  !D
M         ("!A78  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q02P$"% ,4
M    "  (CF=8"+47@[\(  !"%0  &0              @('P?P  >&PO=V]R
M:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    (  B.9UB.]O@M)PD  "<8
M   9              " @>:(  !X;"]W;W)K<VAE971S+W-H965T,3(N>&UL
M4$L! A0#%     @ "(YG6-@:DK C#0  =2(  !D              ("!1)(
M 'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4    "  (CF=8Z_B+
M,&D$  #Q"0  &0              @(&>GP  >&PO=V]R:W-H965T<R]S:&5E
M=#$T+GAM;%!+ 0(4 Q0    (  B.9UB</P<0%PL  ,T?   9
M  " @3ZD  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L! A0#%     @
M"(YG6!MG0$9B @  . 4  !D              ("!C*\  'AL+W=O<FMS:&5E
M=',O<VAE970Q-BYX;6Q02P$"% ,4    "  (CF=8@KJV7S,H   (A0  &0
M            @($EL@  >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;%!+ 0(4
M Q0    (  B.9UC!K=1HMP@  #09   9              " @8_:  !X;"]W
M;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ "(YG6"79'],I!@
M4PX  !D              ("!?>,  'AL+W=O<FMS:&5E=',O<VAE970Q.2YX
M;6Q02P$"% ,4    "  (CF=8HJH[L&D#  !J!P  &0              @('=
MZ0  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    (  B.9UA"
MG"?_(@4  , ,   9              " @7WM  !X;"]W;W)K<VAE971S+W-H
M965T,C$N>&UL4$L! A0#%     @ "(YG6#6#X7D0 P  < 8  !D
M     ("!UO(  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q02P$"% ,4
M"  (CF=8X9O%<L("   F!@  &0              @($=]@  >&PO=V]R:W-H
M965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    (  B.9UB?!AXSEP4  /0/   9
M              " @1;Y  !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL4$L!
M A0#%     @ "(YG6'@@H\UT!@  0RL  !D              ("!Y/X  'AL
M+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    "  (CF=83L_%P68(
M   P20  &0              @(&/!0$ >&PO=V]R:W-H965T<R]S:&5E=#(V
M+GAM;%!+ 0(4 Q0    (  B.9UBD*2I6$ 4  *T;   9              "
M@2P. 0!X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#%     @ "(YG
M6"TS ]]8!0  61   !D              ("!<Q,! 'AL+W=O<FMS:&5E=',O
M<VAE970R."YX;6Q02P$"% ,4    "  (CF=8@>+T]T4#   Z"@  &0
M        @($"&0$ >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+ 0(4 Q0
M   (  B.9U@7&:P>I@0  .<3   9              " @7X< 0!X;"]W;W)K
M<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ "(YG6+-]7H'\ P  ZQ8
M !D              ("!6R$! 'AL+W=O<FMS:&5E=',O<VAE970S,2YX;6Q0
M2P$"% ,4    "  (CF=8TNM<<(\(  #(/0  &0              @(&.)0$
M>&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    (  B.9UB3)>_K
MFP8  -HX   9              " @50N 0!X;"]W;W)K<VAE971S+W-H965T
M,S,N>&UL4$L! A0#%     @ "(YG6&57))W$"   TT,  !D
M ("!)C4! 'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"% ,4    "  (
MCF=8)96.R+<"   :!P  &0              @($A/@$ >&PO=V]R:W-H965T
M<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    (  B.9UA=%!-@!P,  !P(   9
M          " @0]! 0!X;"]W;W)K<VAE971S+W-H965T,S8N>&UL4$L! A0#
M%     @ "(YG6.=< @68 @  F@8  !D              ("!340! 'AL+W=O
M<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    "  (CF=8+-DI"40*   ?
M<@  &0              @($<1P$ >&PO=V]R:W-H965T<R]S:&5E=#,X+GAM
M;%!+ 0(4 Q0    (  B.9UCC>1EHHP(   ,'   9              " @9=1
M 0!X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#%     @ "(YG6+SH
MZERO @  %08  !D              ("!<50! 'AL+W=O<FMS:&5E=',O<VAE
M970T,"YX;6Q02P$"% ,4    "  (CF=84WU6""4#   1"@  &0
M    @(%75P$ >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+ 0(4 Q0    (
M  B.9U@]^,J1<P,  %D+   9              " @;-: 0!X;"]W;W)K<VAE
M971S+W-H965T-#(N>&UL4$L! A0#%     @ "(YG6$( 7BP7 P  J@H  !D
M             ("!75X! 'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6Q02P$"
M% ,4    "  (CF=8$D:XC#($  #K#P  &0              @(&K80$ >&PO
M=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    (  B.9UA_4C*K$@0
M  D0   9              " @11F 0!X;"]W;W)K<VAE971S+W-H965T-#4N
M>&UL4$L! A0#%     @ "(YG6*=9RXE;!P  ?#4  !D              ("!
M76H! 'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6Q02P$"% ,4    "  (CF=8
MN39GDT<$  "-$   &0              @('O<0$ >&PO=V]R:W-H965T<R]S
M:&5E=#0W+GAM;%!+ 0(4 Q0    (  B.9UAZ]\")E@,  $,.   9
M      " @6UV 0!X;"]W;W)K<VAE971S+W-H965T-#@N>&UL4$L! A0#%
M  @ "(YG6%_8FQL) P  QP@  !D              ("!.GH! 'AL+W=O<FMS
M:&5E=',O<VAE970T.2YX;6Q02P$"% ,4    "  (CF=8\=U"BH0#  ![#@
M&0              @(%Z?0$ >&PO=V]R:W-H965T<R]S:&5E=#4P+GAM;%!+
M 0(4 Q0    (  B.9U@&UVB<4P,  $T,   9              " @36! 0!X
M;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L! A0#%     @ "(YG6+)2G>WV
M!@  ,RP  !D              ("!OX0! 'AL+W=O<FMS:&5E=',O<VAE970U
M,BYX;6Q02P$"% ,4    "  (CF=8^GT*<;($  #['   &0
M@('LBP$ >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;%!+ 0(4 Q0    (  B.
M9UA"@N1D>0(  +D%   9              " @=60 0!X;"]W;W)K<VAE971S
M+W-H965T-30N>&UL4$L! A0#%     @ "(YG6(@'Z@LR P  R!,   T
M         ( !A9,! 'AL+W-T>6QE<RYX;6Q02P$"% ,4    "  (CF=8EXJ[
M',     3 @  "P              @ 'BE@$ 7W)E;',O+G)E;'-02P$"% ,4
M    "  (CF=8F2O^$.X$  !X)   #P              @ '+EP$ >&PO=V]R
M:V)O;VLN>&UL4$L! A0#%     @ "(YG6 ^45$C: 0  62   !H
M     ( !YIP! 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%
M  @ "(YG6"%=IR;- 0  )"   !,              ( !^)X! %M#;VYT96YT
A7U1Y<&5S72YX;6Q02P4&     #X /@#I$   ]J !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<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>66
<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>68
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.24.0.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>212</ContextCount>
  <ElementCount>326</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>61</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>100000 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>100010 - Statement - CONSOLIDATED BALANCE SHEETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>100020 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>100030 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF OPERATIONS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>100040 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>100050 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF CASH FLOWS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>100060 - Disclosure - ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES</Role>
      <ShortName>ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>100070 - Disclosure - REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureREVENUECONTRACTASSETSANDLIABILITIESANDOTHERCONTRACTMATTERS</Role>
      <ShortName>REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>100080 - Disclosure - LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipment3</Role>
      <ShortName>LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>100090 - Disclosure - CREDIT FACILITIES AND DEBT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebt</Role>
      <ShortName>CREDIT FACILITIES AND DEBT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>100130 - Disclosure - INCOME TAXES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureINCOMETAXES</Role>
      <ShortName>INCOME TAXES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>100140 - Disclosure - RETIREMENT AND LONG-TERM INCENTIVE PLANS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRETIREMENTANDLONGTERMINCENTIVEPLANS</Role>
      <ShortName>RETIREMENT AND LONG-TERM INCENTIVE PLANS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>100150 - Disclosure - COMMITMENTS AND CONTINGENCIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCOMMITMENTSANDCONTINGENCIES</Role>
      <ShortName>COMMITMENTS AND CONTINGENCIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>100160 - Disclosure - INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquity1</Role>
      <ShortName>INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>100170 - Disclosure - OPERATING SEGMENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOPERATINGSEGMENTS</Role>
      <ShortName>OPERATING SEGMENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>100190 - Disclosure - SUBSEQUENT EVENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEvents1</Role>
      <ShortName>SUBSEQUENT EVENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>100200 - Disclosure - ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies</Role>
      <ShortName>ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>100220 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables</Role>
      <ShortName>Revenue, Contract Assets and Liabilities and Other Contract Matters (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>100230 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables</Role>
      <ShortName>Long-Lived Assets and Leased Facilities and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>100240 - Disclosure - Credit Facilities and Debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtTables</Role>
      <ShortName>Credit Facilities and Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>100280 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>100290 - Disclosure - Retirement and Long-term Incentive Plans (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansTables</Role>
      <ShortName>Retirement and Long-term Incentive Plans (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>100300 - Disclosure - Income (Loss) Per Share and Shareholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityTables</Role>
      <ShortName>Income (Loss) Per Share and Shareholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>100310 - Disclosure - Operating Segments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsTables</Role>
      <ShortName>Operating Segments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>100330 - Disclosure - Organization and Summary of Significant Accounting Policies - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails</Role>
      <ShortName>Organization and Summary of Significant Accounting Policies - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>100340 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Disaggregation of Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails</Role>
      <ShortName>Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>100350 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa</Role>
      <ShortName>Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>100360 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails</Role>
      <ShortName>Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>100370 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails</Role>
      <ShortName>Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>100380 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails</Role>
      <ShortName>Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>100390 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails</Role>
      <ShortName>Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>100400 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails</Role>
      <ShortName>Revenue, Contract Assets and Liabilities and Other Contract Matters - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>100420 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Summary of Property, Plant and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails</Role>
      <ShortName>Long-Lived Assets and Leased Facilities and Equipment - Summary of Property, Plant and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>100430 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails</Role>
      <ShortName>Long-Lived Assets and Leased Facilities and Equipment - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>100440 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails</Role>
      <ShortName>Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>100450 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails</Role>
      <ShortName>Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>100460 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Other Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails</Role>
      <ShortName>Long-Lived Assets and Leased Facilities and Equipment - Schedule of Other Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>100470 - Disclosure - Credit Facilities and Debt - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails</Role>
      <ShortName>Credit Facilities and Debt - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>100480 - Disclosure - Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails</Role>
      <ShortName>Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>100490 - Disclosure - Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails</Role>
      <ShortName>Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>100500 - Disclosure - Shipyard Transaction and Discontinued Operations - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails</Role>
      <ShortName>Shipyard Transaction and Discontinued Operations - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>100530 - Disclosure - Income Taxes - Reconciliation of Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails</Role>
      <ShortName>Income Taxes - Reconciliation of Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>100540 - Disclosure - Income Taxes - Components of Income Tax Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails</Role>
      <ShortName>Income Taxes - Components of Income Tax Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>100550 - Disclosure - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails</Role>
      <ShortName>Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>100560 - Disclosure - Income Taxes - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails</Role>
      <ShortName>Income Taxes - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>100570 - Disclosure - Retirement and Long-Term Incentive Plans - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails</Role>
      <ShortName>Retirement and Long-Term Incentive Plans - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>100580 - Disclosure - Retirement and Long-Term Incentive Plans - Summary of RSU Activity Excluding Cash Settled RSUs (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails</Role>
      <ShortName>Retirement and Long-Term Incentive Plans - Summary of RSU Activity Excluding Cash Settled RSUs (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>100590 - Disclosure - Commitments and Contingencies - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails</Role>
      <ShortName>Commitments and Contingencies - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>100600 - Disclosure - Income (Loss) Per Share and Shareholders' Equity - Computation of Basic and Diluted Earnings Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails</Role>
      <ShortName>Income (Loss) Per Share and Shareholders' Equity - Computation of Basic and Diluted Earnings Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>100620 - Disclosure - Income (Loss) Per Share and Shareholders' Equity - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails</Role>
      <ShortName>Income (Loss) Per Share and Shareholders' Equity - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables</ParentRole>
      <Position>50</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>100630 - Disclosure - Operating Segments - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails</Role>
      <ShortName>Operating Segments - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>100640 - Disclosure - Operating Segments - Summarized Segment Financial Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails</Role>
      <ShortName>Operating Segments - Summarized Segment Financial Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>100650 - Disclosure - Operating Segments - Summarized Segment Financial Information (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails</Role>
      <ShortName>Operating Segments - Summarized Segment Financial Information (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="gifi-20231231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>100660 - Disclosure - Subsequent Events - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails</Role>
      <ShortName>Subsequent Events - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-K" isDefinitelyFs="true" isUsgaap="true" original="gifi-20231231.htm">gifi-20231231.htm</File>
    <File>gifi-20231231.xsd</File>
  </InputFiles>
  <SupplementalFiles>
    <File>img20478310_0.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="605">http://fasb.org/us-gaap/2023</BaseTaxonomy>
    <BaseTaxonomy items="39">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>false</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>71
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "gifi-20231231.htm": {
   "nsprefix": "gifi",
   "nsuri": "http://www.gulfisland.com/20231231",
   "dts": {
    "inline": {
     "local": [
      "gifi-20231231.htm"
     ]
    },
    "schema": {
     "local": [
      "gifi-20231231.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd",
      "https://xbrl.sec.gov/country/2023/country-2023.xsd",
      "https://xbrl.sec.gov/dei/2023/dei-2023.xsd"
     ]
    }
   },
   "keyStandard": 272,
   "keyCustom": 54,
   "axisStandard": 26,
   "axisCustom": 0,
   "memberStandard": 32,
   "memberCustom": 29,
   "hidden": {
    "total": 16,
    "http://fasb.org/us-gaap/2023": 12,
    "http://xbrl.sec.gov/dei/2023": 4
   },
   "contextCount": 212,
   "entityCount": 1,
   "segmentCount": 61,
   "elementCount": 633,
   "unitCount": 7,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 605,
    "http://xbrl.sec.gov/dei/2023": 39
   },
   "report": {
    "R1": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation",
     "longName": "100000 - Document - Document and Entity Information",
     "shortName": "Document and Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS",
     "longName": "100010 - Statement - CONSOLIDATED BALANCE SHEETS",
     "shortName": "CONSOLIDATED BALANCE SHEETS",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical",
     "longName": "100020 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS",
     "longName": "100030 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS",
     "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY",
     "longName": "100040 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY",
     "shortName": "CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "C_445e78ae-06d3-41df-9768-d7b992aac97f",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_445e78ae-06d3-41df-9768-d7b992aac97f",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS",
     "longName": "100050 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ProvisionForDoubtfulAccounts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R7": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES",
     "longName": "100060 - Disclosure - ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
     "shortName": "ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "7",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R8": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureREVENUECONTRACTASSETSANDLIABILITIESANDOTHERCONTRACTMATTERS",
     "longName": "100070 - Disclosure - REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS",
     "shortName": "REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipment3",
     "longName": "100080 - Disclosure - LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT",
     "shortName": "LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebt",
     "longName": "100090 - Disclosure - CREDIT FACILITIES AND DEBT",
     "shortName": "CREDIT FACILITIES AND DEBT",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureINCOMETAXES",
     "longName": "100130 - Disclosure - INCOME TAXES",
     "shortName": "INCOME TAXES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRETIREMENTANDLONGTERMINCENTIVEPLANS",
     "longName": "100140 - Disclosure - RETIREMENT AND LONG-TERM INCENTIVE PLANS",
     "shortName": "RETIREMENT AND LONG-TERM INCENTIVE PLANS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCOMMITMENTSANDCONTINGENCIES",
     "longName": "100150 - Disclosure - COMMITMENTS AND CONTINGENCIES",
     "shortName": "COMMITMENTS AND CONTINGENCIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquity1",
     "longName": "100160 - Disclosure - INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY",
     "shortName": "INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "gifi:IncomeLossPerShareAndShareholdersEquityTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "gifi:IncomeLossPerShareAndShareholdersEquityTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOPERATINGSEGMENTS",
     "longName": "100170 - Disclosure - OPERATING SEGMENTS",
     "shortName": "OPERATING SEGMENTS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEvents1",
     "longName": "100190 - Disclosure - SUBSEQUENT EVENTS",
     "shortName": "SUBSEQUENT EVENTS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies",
     "longName": "100200 - Disclosure - ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "shortName": "ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "17",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "gifi:NatureOfOperationsPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "gifi:NatureOfOperationsPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables",
     "longName": "100220 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters (Tables)",
     "shortName": "Revenue, Contract Assets and Liabilities and Other Contract Matters (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "18",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables",
     "longName": "100230 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment (Tables)",
     "shortName": "Long-Lived Assets and Leased Facilities and Equipment (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "19",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtTables",
     "longName": "100240 - Disclosure - Credit Facilities and Debt (Tables)",
     "shortName": "Credit Facilities and Debt (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "20",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables",
     "longName": "100280 - Disclosure - Income Taxes (Tables)",
     "shortName": "Income Taxes (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "21",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansTables",
     "longName": "100290 - Disclosure - Retirement and Long-term Incentive Plans (Tables)",
     "shortName": "Retirement and Long-term Incentive Plans (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "22",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityTables",
     "longName": "100300 - Disclosure - Income (Loss) Per Share and Shareholders' Equity (Tables)",
     "shortName": "Income (Loss) Per Share and Shareholders' Equity (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "23",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "gifi:IncomeLossPerShareAndShareholdersEquityTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "gifi:IncomeLossPerShareAndShareholdersEquityTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsTables",
     "longName": "100310 - Disclosure - Operating Segments (Tables)",
     "shortName": "Operating Segments (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "24",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
     "longName": "100330 - Disclosure - Organization and Summary of Significant Accounting Policies - Additional Information (Details)",
     "shortName": "Organization and Summary of Significant Accounting Policies - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "25",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:NumberOfOperatingSegments",
      "unitRef": "U_Segment",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "gifi:NatureOfOperationsPolicyTextBlock",
       "div",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:AmountOfDeferredCostsRelatedToLongTermContracts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "gifi:PrecontractCostPolicyTextBlock",
       "div",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails",
     "longName": "100340 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Disaggregation of Revenue (Details)",
     "shortName": "Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Disaggregation of Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "26",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_10d79ba6-7b9d-404f-abff-543af2292ae2",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
     "longName": "100350 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type (Details)",
     "shortName": "Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "27",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails",
     "longName": "100360 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Details)",
     "shortName": "Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "28",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:CapitalizedContractCostGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:CapitalizedContractCostGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails",
     "longName": "100370 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Parenthetical) (Details)",
     "shortName": "Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Contract with Customer, Asset and Liability (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "29",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "gifi:ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "ix:continuation",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "gifi:ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "ix:continuation",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
     "longName": "100380 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Details)",
     "shortName": "Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "30",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_e63efff0-f5d7-48b3-acc7-c3aa44976a25",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "gifi:DisclosureOfSignificantCustomersTableTextBlock",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R31": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails",
     "longName": "100390 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Parenthetical) (Details)",
     "shortName": "Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "31",
     "firstAnchor": {
      "contextRef": "C_4714cb78-99d0-481d-9df4-1009ce2cfc6c",
      "name": "us-gaap:LitigationSettlementExpense",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_0544c597-1d08-4a4e-8030-ada920dc1c4a",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "link:footnote",
       "div",
       "div",
       "gifi:DisclosureOfSignificantCustomersTableTextBlock",
       "div",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R32": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
     "longName": "100400 - Disclosure - Revenue, Contract Assets and Liabilities and Other Contract Matters - Additional Information (Details)",
     "shortName": "Revenue, Contract Assets and Liabilities and Other Contract Matters - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "32",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "gifi:RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "gifi:RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
     "longName": "100420 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Summary of Property, Plant and Equipment (Details)",
     "shortName": "Long-Lived Assets and Leased Facilities and Equipment - Summary of Property, Plant and Equipment (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "33",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
     "longName": "100430 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Additional Information (Details)",
     "shortName": "Long-Lived Assets and Leased Facilities and Equipment - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "34",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:DepreciationAmortizationAndAccretionNet",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:DepreciationAmortizationAndAccretionNet",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails",
     "longName": "100440 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Details)",
     "shortName": "Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "35",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails",
     "longName": "100450 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Parenthetical) (Details)",
     "shortName": "Long-Lived Assets and Leased Facilities and Equipment - Schedule of Minimum Future Rental Payments (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "36",
     "firstAnchor": {
      "contextRef": "C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803",
      "name": "us-gaap:AssetImpairmentCharges",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:LesseeOperatingLeaseTermOfContract",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "div",
       "ix:continuation",
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R37": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails",
     "longName": "100460 - Disclosure - Long-Lived Assets and Leased Facilities and Equipment - Schedule of Other Intangible Assets (Details)",
     "shortName": "Long-Lived Assets and Leased Facilities and Equipment - Schedule of Other Intangible Assets (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:FiniteLivedCustomerRelationshipsGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:FiniteLivedCustomerRelationshipsGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R38": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
     "longName": "100470 - Disclosure - Credit Facilities and Debt - Additional Information (Details)",
     "shortName": "Credit Facilities and Debt - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "C_12854efa-a02d-4d65-b817-b5e45dc6252b",
      "name": "us-gaap:DebtInstrumentMaturityDate",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_12854efa-a02d-4d65-b817-b5e45dc6252b",
      "name": "us-gaap:DebtInstrumentMaturityDate",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails",
     "longName": "100480 - Disclosure - Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Details)",
     "shortName": "Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails",
     "longName": "100490 - Disclosure - Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Parenthetical) (Details)",
     "shortName": "Credit Facilities and Debt - Schedule of Future Annual Principal Maturities Under Note Agreement (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44",
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "div",
       "ix:continuation",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_10d68f7a-a90d-431b-9e2a-da2598783742",
      "name": "us-gaap:IncreaseDecreaseInInterestPayableNet",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "div",
       "ix:continuation",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R41": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails",
     "longName": "100500 - Disclosure - Shipyard Transaction and Discontinued Operations - Additional Information (Details)",
     "shortName": "Shipyard Transaction and Discontinued Operations - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d",
      "name": "us-gaap:Liabilities",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R42": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails",
     "longName": "100530 - Disclosure - Income Taxes - Reconciliation of Income Taxes (Details)",
     "shortName": "Income Taxes - Reconciliation of Income Taxes (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R43": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails",
     "longName": "100540 - Disclosure - Income Taxes - Components of Income Tax Expense (Details)",
     "shortName": "Income Taxes - Components of Income Tax Expense (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R44": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails",
     "longName": "100550 - Disclosure - Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)",
     "shortName": "Income Taxes - Components of Deferred Tax Assets and Liabilities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "gifi:DeferredTaxAssetsLeases",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "gifi:DeferredTaxAssetsLeases",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails",
     "longName": "100560 - Disclosure - Income Taxes - Additional Information (Details)",
     "shortName": "Income Taxes - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "C_47994a14-accc-418c-92d7-381b622394d5",
      "name": "us-gaap:DeferredTaxAssetsGross",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_da17b24e-8d51-45f0-a249-36d148fe59c1",
      "name": "us-gaap:OperatingLossCarryforwards",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R46": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
     "longName": "100570 - Disclosure - Retirement and Long-Term Incentive Plans - Additional Information (Details)",
     "shortName": "Retirement and Long-Term Incentive Plans - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails",
     "longName": "100580 - Disclosure - Retirement and Long-Term Incentive Plans - Summary of RSU Activity Excluding Cash Settled RSUs (Details)",
     "shortName": "Retirement and Long-Term Incentive Plans - Summary of RSU Activity Excluding Cash Settled RSUs (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "dei:DocumentFiscalYearFocus",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "dei:DocumentPeriodEndDate",
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_06f13167-5eed-4387-a08a-8dff424bad6e",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "div",
       "gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R48": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails",
     "longName": "100590 - Disclosure - Commitments and Contingencies - Additional Information (Details)",
     "shortName": "Commitments and Contingencies - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "C_f12de176-6bb7-44c6-a364-76db7bf9d4c3",
      "name": "gifi:ConstructionInProgressNumberOfMultiPurposeServiceVessels",
      "unitRef": "U_Vessel",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f12de176-6bb7-44c6-a364-76db7bf9d4c3",
      "name": "gifi:ConstructionInProgressNumberOfMultiPurposeServiceVessels",
      "unitRef": "U_Vessel",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true,
      "unique": true
     }
    },
    "R49": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
     "longName": "100600 - Disclosure - Income (Loss) Per Share and Shareholders' Equity - Computation of Basic and Diluted Earnings Per Share (Details)",
     "shortName": "Income (Loss) Per Share and Shareholders' Equity - Computation of Basic and Diluted Earnings Per Share (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "div",
       "gifi:IncomeLossPerShareAndShareholdersEquityTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R50": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails",
     "longName": "100620 - Disclosure - Income (Loss) Per Share and Shareholders' Equity - Additional Information (Details)",
     "shortName": "Income (Loss) Per Share and Shareholders' Equity - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:StockRepurchasedDuringPeriodValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_6d7d296e-8308-421e-b161-9b8751b36e38",
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "gifi:IncomeLossPerShareAndShareholdersEquityTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R51": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails",
     "longName": "100630 - Disclosure - Operating Segments - Additional Information (Details)",
     "shortName": "Operating Segments - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:NumberOfOperatingSegments",
      "unitRef": "U_Segment",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "gifi:NatureOfOperationsPolicyTextBlock",
       "div",
       "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_b19e0574-d5db-429e-b9ea-18e4968c8435",
      "name": "us-gaap:OperatingLeaseLiability",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R52": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
     "longName": "100640 - Disclosure - Operating Segments - Summarized Segment Financial Information (Details)",
     "shortName": "Operating Segments - Summarized Segment Financial Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "C_cae205c4-092f-40ce-becd-df88720df331",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_77250883-71d3-4197-8132-505f6c3763fc",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R53": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
     "longName": "100650 - Disclosure - Operating Segments - Summarized Segment Financial Information (Parenthetical) (Details)",
     "shortName": "Operating Segments - Summarized Segment Financial Information (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "C_4714cb78-99d0-481d-9df4-1009ce2cfc6c",
      "name": "us-gaap:LitigationSettlementExpense",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc",
      "name": "us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "div",
       "ix:continuation",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "unique": true
     }
    },
    "R54": {
     "role": "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails",
     "longName": "100660 - Disclosure - Subsequent Events - Additional Information (Details)",
     "shortName": "Subsequent Events - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "C_01ac159e-3c97-46af-b432-8dbdc656cd94",
      "name": "gifi:ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "gifi-20231231.htm",
      "first": true
     },
     "uniqueAnchor": null
    }
   },
   "tag": {
    "us-gaap_AccountingStandardsUpdate201613Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountingStandardsUpdate201613Member",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASU 2016-13",
        "label": "Accounting Standards Update 2016-13 [Member]",
        "documentation": "Accounting Standards Update 2016-13 Financial Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments."
       }
      }
     },
     "auth_ref": [
      "r299"
     ]
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Accounts Payable, Current, Total",
        "terseLabel": "Accounts payable",
        "label": "Accounts Payable, Current",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r746"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Accrued Liabilities, Current, Total",
        "terseLabel": "Accrued expenses and other liabilities",
        "label": "Accrued Liabilities, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r21"
     ]
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Ending Balance",
        "periodStartLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Beginning Balance",
        "totalLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment, Total",
        "negatedLabel": "Accumulated depreciation",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r198",
      "r586"
     ]
    },
    "gifi_AdditionalLossRelatedToAdditionalTransactionAndOtherCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "AdditionalLossRelatedToAdditionalTransactionAndOtherCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional loss related to additional transaction and other costs",
        "label": "Additional Loss Related To Additional Transaction And Other Costs",
        "documentation": "Additional loss related to additional transaction and other costs."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdditionalPaidInCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapital",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Additional Paid in Capital, Ending Balance",
        "periodStartLabel": "Additional Paid in Capital, Beginning Balance",
        "totalLabel": "Additional Paid in Capital, Total",
        "terseLabel": "Additional paid-in capital",
        "label": "Additional Paid in Capital",
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock."
       }
      }
     },
     "auth_ref": [
      "r110",
      "r746",
      "r860"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional Paid-In Capital",
        "label": "Additional Paid-in Capital [Member]",
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders."
       }
      }
     },
     "auth_ref": [
      "r456",
      "r457",
      "r458",
      "r631",
      "r789",
      "r790",
      "r791",
      "r833",
      "r861"
     ]
    },
    "gifi_AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting of restricted stock (in shares)",
        "label": "Adjustment To Additional Paid In Capital Income Tax Effect From Share Based Compensation Net In Shares",
        "documentation": "Adjustment to additional paid in capital, income tax effect from share-based compensation, net, in shares."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Axis]",
        "documentation": "Information by amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r234",
      "r235",
      "r236",
      "r237",
      "r248",
      "r295",
      "r296",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r340",
      "r456",
      "r457",
      "r458",
      "r480",
      "r481",
      "r482",
      "r483",
      "r496",
      "r497",
      "r498",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r531",
      "r532",
      "r533",
      "r534",
      "r542",
      "r543",
      "r545",
      "r546",
      "r547",
      "r548",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r573",
      "r574",
      "r575",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622"
     ]
    },
    "gifi_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting of restricted stock",
        "label": "Adjustments To Additional Paid In Capital Share Based Compensation Vesting Of Restricted Stock",
        "documentation": "Adjustments to additional paid in capital share based compensation vesting of restricted stock."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adjustments to reconcile net loss to net cash provided by (used in) operating activities:",
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Performance based share compensation expense",
        "label": "Share-Based Payment Arrangement, Expense",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r453",
      "r463"
     ]
    },
    "gifi_AllocatedShareBasedCompensationExpenseReversed": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "AllocatedShareBasedCompensationExpenseReversed",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Performance based share compensation benefit due to reversal of previously recognized expense",
        "label": "Allocated Share Based Compensation Expense Reversed",
        "documentation": "Allocated share based compensation expense reversed."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AllowanceForDoubtfulAccountsReceivable",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Allowance for doubtful accounts and credit losses",
        "label": "Accounts Receivable, Allowance for Credit Loss",
        "periodEndLabel": "Accounts Receivable, Allowance for Credit Loss, Ending Balance",
        "periodStartLabel": "Accounts Receivable, Allowance for Credit Loss, Beginning Balance",
        "documentation": "Amount of allowance for credit loss on accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r205",
      "r294",
      "r310",
      "r311",
      "r313",
      "r855"
     ]
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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": []
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AmortizationOfIntangibleAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of Intangible Assets",
        "terseLabel": "Amortization expense for intangible assets",
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r50",
      "r54"
     ]
    },
    "us-gaap_AmountOfDeferredCostsRelatedToLongTermContracts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AmountOfDeferredCostsRelatedToLongTermContracts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid contract costs",
        "label": "Amount of Deferred Costs Related to Long-Term Contracts",
        "documentation": "Amount of deferred costs for long-term contracts and programs. Includes, but is not limited to, initial tooling costs and deferred production costs."
       }
      }
     },
     "auth_ref": [
      "r207"
     ]
    },
    "us-gaap_ArrangementsAndNonarrangementTransactionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ArrangementsAndNonarrangementTransactionsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]",
        "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations."
       }
      }
     },
     "auth_ref": [
      "r500"
     ]
    },
    "us-gaap_AssetImpairmentCharges": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetImpairmentCharges",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Asset Impairment Charges, Total",
        "terseLabel": "Asset impairments",
        "label": "Asset Impairment Charges",
        "verboseLabel": "Asset impairment charges",
        "documentation": "Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r55"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total assets",
        "terseLabel": "Total assets",
        "label": "Assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r159",
      "r202",
      "r227",
      "r264",
      "r279",
      "r285",
      "r298",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r359",
      "r361",
      "r363",
      "r364",
      "r501",
      "r503",
      "r530",
      "r581",
      "r657",
      "r746",
      "r759",
      "r812",
      "r813",
      "r842"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASSETS",
        "label": "Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "terseLabel": "Total current assets",
        "label": "Assets, Current",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r193",
      "r210",
      "r227",
      "r298",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r359",
      "r361",
      "r363",
      "r364",
      "r501",
      "r503",
      "r530",
      "r746",
      "r812",
      "r813",
      "r842"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current assets:",
        "label": "Assets, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsHeldForSaleNotPartOfDisposalGroupAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Asset, Held-for-Sale, Not Part of Disposal Group [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsHeldForSaleNotPartOfDisposalGroupCurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Assets Held-for-sale, Not Part of Disposal Group, Current, Total",
        "label": "Asset, Held-for-Sale, Not Part of Disposal Group, Current",
        "terseLabel": "Assets held for sale",
        "documentation": "Amount of assets held-for-sale that are not part of a disposal group, expected to be sold within a year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r137",
      "r746"
     ]
    },
    "gifi_AssetsHeldForSalePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "AssetsHeldForSalePolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Assets Held for Sale",
        "label": "Assets Held For Sale Policy [Text Block]",
        "documentation": "Assets Held For Sale [Policy Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Carrying value of asset held for sale",
        "terseLabel": "Assets held for sale",
        "label": "Disposal Group, Including Discontinued Operation, Assets, Current",
        "totalLabel": "Disposal Group, Including Discontinued Operation, Assets, Current, Total",
        "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r87",
      "r101",
      "r139",
      "r141",
      "r191",
      "r192"
     ]
    },
    "dei_AuditorFirmId": {
     "xbrltype": "nonemptySequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AuditorFirmId",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Auditor Firm ID",
        "label": "Auditor Firm ID",
        "documentation": "PCAOB issued Audit Firm Identifier"
       }
      }
     },
     "auth_ref": [
      "r764",
      "r765",
      "r766"
     ]
    },
    "dei_AuditorLocation": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AuditorLocation",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Auditor Location",
        "label": "Auditor Location"
       }
      }
     },
     "auth_ref": [
      "r764",
      "r765",
      "r766"
     ]
    },
    "dei_AuditorName": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AuditorName",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Auditor Name",
        "label": "Auditor Name"
       }
      }
     },
     "auth_ref": [
      "r764",
      "r765",
      "r766"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Type",
        "label": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r424",
      "r425",
      "r426",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452"
     ]
    },
    "gifi_BalanceSheetDateClassifiedAsCurrentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "BalanceSheetDateClassifiedAsCurrentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Balance Sheet Date Classified as Current",
        "label": "Balance Sheet Date Classified As Current [Member]",
        "documentation": "Balance sheet date classified as current."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_BalanceSheetDateClassifiedAsNoncurrentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "BalanceSheetDateClassifiedAsNoncurrentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Balance Sheet Date Classified as Noncurrent",
        "label": "Balance Sheet Date Classified As Noncurrent [Member]",
        "documentation": "Balance sheet date classified as noncurrent."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BalanceSheetLocationAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Balance Sheet Location",
        "label": "Balance Sheet Location [Axis]",
        "documentation": "Information by location on balance sheet (statement of financial position)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BalanceSheetLocationDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Balance Sheet Location",
        "label": "Balance Sheet Location [Domain]",
        "documentation": "Location in the balance sheet (statement of financial position)."
       }
      }
     },
     "auth_ref": [
      "r76",
      "r77"
     ]
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basis of Presentation",
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_BollingerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "BollingerMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Bollinger",
        "label": "Bollinger [Member]",
        "documentation": "Bollinger."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BuildingImprovementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BuildingImprovementsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Improvements",
        "label": "Building Improvements [Member]",
        "documentation": "Addition, improvement, or renovation to a facility held for productive use including, but not limited to, office, production, storage and distribution facilities."
       }
      }
     },
     "auth_ref": [
      "r140"
     ]
    },
    "us-gaap_BuildingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BuildingMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Buildings",
        "label": "Building [Member]",
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities."
       }
      }
     },
     "auth_ref": [
      "r140"
     ]
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionAcquireeDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Business Acquisition, Acquiree",
        "label": "Business Acquisition, Acquiree [Domain]",
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree."
       }
      }
     },
     "auth_ref": [
      "r494",
      "r740",
      "r741"
     ]
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Business Acquisition",
        "label": "Business Acquisition [Axis]",
        "documentation": "Information by business combination or series of individually immaterial business combinations."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r73",
      "r494",
      "r740",
      "r741"
     ]
    },
    "us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionCostOfAcquiredEntityTransactionCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Business acquisition, transaction costs",
        "label": "Business Acquisition, Transaction Costs",
        "documentation": "Amount of direct costs of the business combination including legal, accounting, and other costs incurred to consummate the business acquisition."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionProFormaInformationTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureAcquisitionTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Proforma Information",
        "label": "Business Acquisition, Pro Forma Information [Table Text Block]",
        "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate."
       }
      }
     },
     "auth_ref": [
      "r774",
      "r775"
     ]
    },
    "us-gaap_BusinessCombinationAcquisitionRelatedCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationAcquisitionRelatedCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Acquisition costs",
        "label": "Business Combination, Acquisition Related Costs",
        "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities."
       }
      }
     },
     "auth_ref": [
      "r71"
     ]
    },
    "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationAndAssetAcquisitionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination and Asset Acquisition [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureACQUISITION"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ACQUISITION",
        "label": "Business Combination Disclosure [Text Block]",
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable)."
       }
      }
     },
     "auth_ref": [
      "r155",
      "r495"
     ]
    },
    "gifi_CapitalExpendituresExcludedFromAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CapitalExpendituresExcludedFromAccountsPayable",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Capital expenditures excluded from accounts payable.",
        "label": "Capital Expenditures Excluded From Accounts Payable",
        "terseLabel": "Accounts payable excluded from capital expenditures"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_CapitalizedContractCostBillingsToDate": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CapitalizedContractCostBillingsToDate",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails": {
       "parentTag": "gifi_ContractWithCustomerAssetLiabilityNet",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Billings to date",
        "label": "Capitalized Contract Cost Billings To Date",
        "documentation": "Capitalized contract cost billings to date."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_CapitalizedContractCostEstimatedProfitLossesIncurredToDate": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CapitalizedContractCostEstimatedProfitLossesIncurredToDate",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Estimated losses incurred to date",
        "label": "Capitalized contract cost estimated profit losses incurred to date",
        "documentation": "Capitalized contract cost estimated profit losses incurred to date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CapitalizedContractCostGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CapitalizedContractCostGross",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails": {
       "parentTag": "us-gaap_CapitalizedContractCostNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Costs incurred to date",
        "terseLabel": "Costs incurred on uncompleted contracts",
        "label": "Capitalized Contract Cost, Gross",
        "documentation": "Amount, before accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer."
       }
      }
     },
     "auth_ref": [
      "r802"
     ]
    },
    "us-gaap_CapitalizedContractCostNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CapitalizedContractCostNet",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails": {
       "parentTag": "gifi_ContractWithCustomerAssetLiabilityNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Sub-total",
        "label": "Capitalized Contract Cost, Net",
        "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer."
       }
      }
     },
     "auth_ref": [
      "r319"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Cash and Cash Equivalents, at Carrying Value, Ending Balance",
        "periodStartLabel": "Cash and Cash Equivalents, at Carrying Value, Beginning Balance",
        "totalLabel": "Cash and Cash Equivalents, at Carrying Value, Total",
        "terseLabel": "Cash and cash equivalents",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r33",
      "r196",
      "r714"
     ]
    },
    "gifi_CashBasedPaymentAwardAwardRequisiteServicePeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CashBasedPaymentAwardAwardRequisiteServicePeriod1",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Performance period awards are earned",
        "label": "Cash Based Payment Award Award Requisite Service Period1",
        "documentation": "Cash based payment award award requisite service period."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_CashBasedPerformanceAwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CashBasedPerformanceAwardsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash-Based Performance Awards",
        "label": "Cash Based Performance Awards [Member]",
        "documentation": "Cash-based performance awards."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsAndShortTermInvestmentsTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Equivalents and Short-term Investments",
        "label": "Cash, Cash Equivalents, and Short-Term Investments [Text Block]",
        "documentation": "The entire disclosure of the components of cash, cash equivalents, and short-term investments. Short-term investments may include current marketable securities."
       }
      }
     },
     "auth_ref": [
      "r796"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Total",
        "periodStartLabel": "Cash, cash equivalents and restricted cash, beginning of period",
        "periodEndLabel": "Cash, cash equivalents and restricted cash, end of period",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r33",
      "r127",
      "r225"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net increase (decrease) in cash, cash equivalents and restricted cash",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r127"
     ]
    },
    "us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investing cash flows from discontinued operations",
        "label": "Cash Provided by (Used in) Investing Activities, Discontinued Operations",
        "documentation": "Amount of cash inflow (outflow) of investing activities of discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r127"
     ]
    },
    "us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating cash flows from discontinued operations",
        "label": "Cash Provided by (Used in) Operating Activities, Discontinued Operations",
        "documentation": "Amount of cash inflow (outflow) of operating activities of discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r127"
     ]
    },
    "gifi_CashSettledRSUAwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CashSettledRSUAwardsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Settled RSU Awards",
        "label": "Cash Settled R S U Awards [Member]",
        "documentation": "Cash settled RSU awards."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ChargesAssociatedWithDamageCausedByHurricane": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ChargesAssociatedWithDamageCausedByHurricane",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Charges associated with damage caused by Hurricane Laura",
        "label": "Charges Associated With Damage Caused By Hurricane",
        "documentation": "Charges associated with damage caused by Hurricane."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ChargesAssociatedWithInsuranceRecoveriesOfStorm": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ChargesAssociatedWithInsuranceRecoveriesOfStorm",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Charges associated with insurance recoveries of storm",
        "label": "Charges Associated With Insurance Recoveries Of Storm",
        "documentation": "Charges associated with insurance recoveries of storm."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ChargesForDamage": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ChargesForDamage",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Charges for damage",
        "label": "Charges For Damage",
        "documentation": "Charges for damage."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ChargesRelatedToDamageDueToLandfall": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ChargesRelatedToDamageDueToLandfall",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Charges related to damage caused by landfall",
        "label": "Charges Related To Damage Due To Landfall",
        "documentation": "Charges related to damage due to landfall."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ChargesRelatedToDeductiblesTotal": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ChargesRelatedToDeductiblesTotal",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total charges related to deductibles",
        "label": "Charges Related To Deductibles Total",
        "documentation": "Charges related to deductibles total."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "City Area Code",
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ClassOfTreasuryStockTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ClassOfTreasuryStockTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Treasury Stock [Table]",
        "documentation": "Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r62",
      "r63",
      "r64"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCOMMITMENTSANDCONTINGENCIES"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "COMMITMENTS AND CONTINGENCIES",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r144",
      "r344",
      "r345",
      "r698",
      "r806"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common Stock",
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r749",
      "r750",
      "r751",
      "r753",
      "r754",
      "r755",
      "r756",
      "r789",
      "r790",
      "r833",
      "r859",
      "r861"
     ]
    },
    "us-gaap_CommonStockNoParValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockNoParValue",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, no par value",
        "label": "Common Stock, No Par Value",
        "documentation": "Face amount per share of no-par value common stock."
       }
      }
     },
     "auth_ref": [
      "r109"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, shares authorized (in shares)",
        "label": "Common Stock, Shares Authorized",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r109",
      "r645"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Common Stock, Shares, Issued, Total",
        "terseLabel": "Common stock, shares issued (in shares)",
        "label": "Common Stock, Shares, Issued",
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury."
       }
      }
     },
     "auth_ref": [
      "r109"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, shares outstanding (in shares)",
        "periodStartLabel": "Beginning Balance (in shares)",
        "periodEndLabel": "Ending Balance (in shares)",
        "label": "Common Stock, Shares, Outstanding",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r109",
      "r645",
      "r663",
      "r861",
      "r862"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, no par value, 30,000 shares authorized, 16,258 issued and outstanding at December 31, 2023 and 15,973 at December 31, 2022",
        "periodEndLabel": "Common Stock, Value, Issued, Ending Balance",
        "periodStartLabel": "Common Stock, Value, Issued, Beginning Balance",
        "totalLabel": "Common Stock, Value, Issued, Total",
        "label": "Common Stock, Value, Issued",
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity."
       }
      }
     },
     "auth_ref": [
      "r109",
      "r583",
      "r746"
     ]
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskBenchmarkDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration Risk Benchmark",
        "label": "Concentration Risk Benchmark [Domain]",
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r41",
      "r78",
      "r79",
      "r293",
      "r697"
     ]
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration Risk Benchmark",
        "label": "Concentration Risk Benchmark [Axis]",
        "documentation": "Information by benchmark of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r41",
      "r78",
      "r79",
      "r293",
      "r623",
      "r697"
     ]
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskByTypeAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration Risk Type",
        "label": "Concentration Risk Type [Axis]",
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r41",
      "r78",
      "r79",
      "r293",
      "r697",
      "r773"
     ]
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskPercentage1",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration risk, percentage",
        "label": "Concentration Risk, Percentage",
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r41",
      "r78",
      "r79",
      "r293"
     ]
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskTypeDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration Risk Type",
        "label": "Concentration Risk Type [Domain]",
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r41",
      "r78",
      "r79",
      "r293",
      "r697"
     ]
    },
    "srt_ConsolidationItemsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ConsolidationItemsAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Consolidation Items",
        "label": "Consolidation Items [Axis]"
       }
      }
     },
     "auth_ref": [
      "r229",
      "r266",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r283",
      "r287",
      "r352",
      "r353",
      "r354",
      "r355",
      "r357",
      "r358",
      "r360",
      "r362",
      "r363",
      "r812",
      "r813"
     ]
    },
    "srt_ConsolidationItemsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ConsolidationItemsDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Consolidation Items",
        "label": "Consolidation Items [Domain]"
       }
      }
     },
     "auth_ref": [
      "r229",
      "r266",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r283",
      "r287",
      "r352",
      "r353",
      "r354",
      "r355",
      "r357",
      "r358",
      "r360",
      "r362",
      "r363",
      "r812",
      "r813"
     ]
    },
    "us-gaap_ConstructionInProgressMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConstructionInProgressMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Construction in progress",
        "label": "Construction in Progress [Member]",
        "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ConstructionInProgressNumberOfMultiPurposeServiceVessels": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ConstructionInProgressNumberOfMultiPurposeServiceVessels",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of multi-purpose service vessels",
        "label": "Construction In Progress Number Of Multi Purpose Service Vessels",
        "documentation": "Construction in progress, number of multi-purpose service vessels."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ContractAssetUnderDisputeNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ContractAssetUnderDisputeNoncurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract asset under dispute, noncurrent",
        "label": "Contract Asset Under Dispute Noncurrent",
        "documentation": "Contract asset under dispute noncurrent."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractReceivableDueOneYearOrLess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractReceivableDueOneYearOrLess",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract receivables and retainage, net",
        "label": "Construction Contractor, Receivable, Excluding Contract Retainage, Year One",
        "documentation": "Amount of right to consideration in exchange for good or service transferred to customer under long-term contract or program when right to consideration is unconditional, excluding amount withheld under retainage provision in contract, to be collected in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r850"
     ]
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Contract with Customer, Asset and Liability",
        "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]",
        "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability."
       }
      }
     },
     "auth_ref": [
      "r817"
     ]
    },
    "gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueApprovedChangeOrder",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Approved change order from increased contract price",
        "label": "Contract With Customer Asset Cumulative Catch Up Adjustment To Revenue Approved Change Order",
        "documentation": "Contract with customer asset cumulative catch-up adjustment to revenue approved change order."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Increase in operating income (loss) due to project charges",
        "label": "Contract with Customer, Asset, Cumulative Catch-up Adjustment to Revenue, Change in Estimate of Transaction Price",
        "documentation": "Amount of increase (decrease) in revenue recognized for cumulative catch-up adjustment from change in estimate of transaction price which increases (decreases) right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time. Includes, but is not limited to, change in assessment of whether estimate of variable consideration is constrained."
       }
      }
     },
     "auth_ref": [
      "r732"
     ]
    },
    "gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Change in estimated margins",
        "label": "Contract With Customer Asset Cumulative Catch Up Adjustment To Revenue Change In Estimated Margins",
        "documentation": "Contract with customer, asset, cumulative catch-up adjustment to revenue, change in estimated margins."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueIncreasedCraftLaborCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increased craft labor costs",
        "label": "Contract With Customer Asset Cumulative Catch Up Adjustment To Revenue Increased Craft Labor Costs",
        "documentation": "Contract with customer asset cumulative catch-up adjustment to revenue increased craft labor costs."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ContractWithCustomerAssetLiabilityNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ContractWithCustomerAssetLiabilityNet",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      },
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails2": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total",
        "label": "Contract With Customer Asset Liability Net",
        "documentation": "Contract with customer asset liability net."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerAssetNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerAssetNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails2": {
       "parentTag": "gifi_ContractWithCustomerAssetLiabilityNet",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Contract with Customer, Asset, after Allowance for Credit Loss, Current, Total",
        "terseLabel": "Contract assets",
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current",
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current."
       }
      }
     },
     "auth_ref": [
      "r395",
      "r397",
      "r416"
     ]
    },
    "gifi_ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract with customer, asset, revenue recognized in excess of amounts billed, current",
        "label": "Contract With Customer Asset Revenue Recognized In Excess Of Amounts Billed Current",
        "documentation": "Contract with customer, asset, revenue recognized in excess of amounts billed, current."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerBasisOfPricingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerBasisOfPricingAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract with Customer, Basis of Pricing",
        "label": "Contract with Customer, Basis of Pricing [Axis]",
        "documentation": "Information by basis of pricing for contract representing right to consideration in exchange for good or service transferred to customer."
       }
      }
     },
     "auth_ref": [
      "r736",
      "r818"
     ]
    },
    "us-gaap_ContractWithCustomerBasisOfPricingDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerBasisOfPricingDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract with Customer, Basis of Pricing",
        "label": "Contract with Customer, Basis of Pricing [Domain]",
        "documentation": "Basis of pricing for contract with customer. Includes, but is not limited to, fixed-price and time-and-materials contracts."
       }
      }
     },
     "auth_ref": [
      "r736",
      "r818"
     ]
    },
    "us-gaap_ContractWithCustomerDurationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerDurationAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Duration [Axis]",
        "documentation": "Information by duration of contract with customer. Includes, but is not limited to, short-term and long-term contracts."
       }
      }
     },
     "auth_ref": [
      "r737",
      "r818"
     ]
    },
    "us-gaap_ContractWithCustomerDurationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerDurationDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Duration [Domain]",
        "documentation": "Duration of contract with customer. Includes, but is not limited to, short-term and long-term contracts."
       }
      }
     },
     "auth_ref": [
      "r737",
      "r818"
     ]
    },
    "gifi_ContractWithCustomerLiabilityAccruedContractLossesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ContractWithCustomerLiabilityAccruedContractLossesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract with customer, liability, accrued contract losses, current",
        "label": "Contract With Customer Liability Accrued Contract Losses Current",
        "documentation": "Contract with customer liability accrued contract losses current."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails2": {
       "parentTag": "gifi_ContractWithCustomerAssetLiabilityNet",
       "weight": -1.0,
       "order": 1.0
      },
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Contract liabilities",
        "terseLabel": "Contract liabilities",
        "label": "Contract with Customer, Liability, Current",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r395",
      "r396",
      "r416"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract with customer, liability, revenue recognized",
        "label": "Contract with Customer, Liability, Revenue Recognized",
        "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due."
       }
      }
     },
     "auth_ref": [
      "r417"
     ]
    },
    "gifi_ContractWithCustomerReserveForLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ContractWithCustomerReserveForLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reserve for loss",
        "label": "Contract With Customer Reserve For Loss",
        "documentation": "Contract With Customer, Reserve For Loss."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CorporateNonSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CorporateNonSegmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Corporate",
        "label": "Corporate, Non-Segment [Member]",
        "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r278",
      "r279",
      "r280",
      "r281",
      "r287",
      "r795"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Cost of Goods and Services Sold, Total",
        "terseLabel": "Cost of revenue",
        "label": "Cost of Goods and Services Sold",
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities."
       }
      }
     },
     "auth_ref": [
      "r121",
      "r571"
     ]
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CreditFacilityAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Credit Facility",
        "label": "Credit Facility [Axis]",
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditFacilityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CreditFacilityDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Credit Facility",
        "label": "Credit Facility [Domain]",
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": []
    },
    "srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "After Adoption of ASU 2016-13",
        "label": "Cumulative Effect, Period of Adoption, Adjusted Balance [Member]"
       }
      }
     },
     "auth_ref": [
      "r776",
      "r779",
      "r792",
      "r799",
      "r800",
      "r821",
      "r822",
      "r823",
      "r828",
      "r829",
      "r832",
      "r833",
      "r834",
      "r840"
     ]
    },
    "srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "CumulativeEffectPeriodOfAdoptionAdjustmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adoption of ASU 2016-13",
        "label": "Cumulative Effect, Period of Adoption, Adjustment [Member]"
       }
      }
     },
     "auth_ref": [
      "r187",
      "r233",
      "r241",
      "r248",
      "r303",
      "r309",
      "r456",
      "r457",
      "r458",
      "r482",
      "r483",
      "r508",
      "r510",
      "r511",
      "r513",
      "r514",
      "r515",
      "r519",
      "r522",
      "r524",
      "r525",
      "r559"
     ]
    },
    "srt_CumulativeEffectPeriodOfAdoptionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "CumulativeEffectPeriodOfAdoptionAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption [Axis]"
       }
      }
     },
     "auth_ref": [
      "r187",
      "r233",
      "r241",
      "r248",
      "r303",
      "r309",
      "r456",
      "r457",
      "r458",
      "r482",
      "r483",
      "r508",
      "r510",
      "r511",
      "r513",
      "r514",
      "r515",
      "r519",
      "r522",
      "r524",
      "r525",
      "r559"
     ]
    },
    "srt_CumulativeEffectPeriodOfAdoptionDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "CumulativeEffectPeriodOfAdoptionDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption [Domain]"
       }
      }
     },
     "auth_ref": [
      "r187",
      "r233",
      "r241",
      "r248",
      "r303",
      "r309",
      "r456",
      "r457",
      "r458",
      "r482",
      "r483",
      "r508",
      "r510",
      "r511",
      "r513",
      "r514",
      "r515",
      "r519",
      "r522",
      "r524",
      "r525",
      "r559"
     ]
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CurrentFederalTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Federal",
        "label": "Current Federal Tax Expense (Benefit)",
        "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r778",
      "r788",
      "r830"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current Fiscal Year End Date",
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current",
        "label": "Current Income Tax Expense (Benefit)",
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r154",
      "r479",
      "r487",
      "r788"
     ]
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current",
        "label": "Current Income Tax Expense (Benefit), Continuing Operations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "State",
        "label": "Current State and Local Tax Expense (Benefit)",
        "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r778",
      "r788",
      "r830"
     ]
    },
    "gifi_CustomerAMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CustomerAMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer A",
        "label": "Customer A [Member]",
        "documentation": "Customer A [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_CustomerBMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CustomerBMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer B",
        "label": "Customer B [Member]",
        "documentation": "Customer B [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_CustomerCMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CustomerCMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer C",
        "label": "Customer C [Member]",
        "documentation": "Customer C [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CustomerConcentrationRiskMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer Concentration Risk",
        "label": "Customer Concentration Risk [Member]",
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r293"
     ]
    },
    "gifi_CustomerDMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "CustomerDMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer D",
        "label": "Customer D [Member]",
        "documentation": "Customer D."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerRelationshipsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CustomerRelationshipsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer Relationships",
        "label": "Customer Relationships [Member]",
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships."
       }
      }
     },
     "auth_ref": [
      "r74"
     ]
    },
    "gifi_DSSAcquisitionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DSSAcquisitionMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "DSS Acquisition",
        "label": "D S S Acquisition [Member]",
        "documentation": "DSS acquisition."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DateOfLandfallOccurred": {
     "xbrltype": "dateItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DateOfLandfallOccurred",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Date of landfall",
        "label": "Date Of Landfall Occurred",
        "documentation": "Date of landfall occurred."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebt"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "CREDIT FACILITIES AND DEBT",
        "label": "Debt Disclosure [Text Block]",
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants."
       }
      }
     },
     "auth_ref": [
      "r145",
      "r226",
      "r365",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r381",
      "r388",
      "r389",
      "r391"
     ]
    },
    "us-gaap_DebtInstrumentAnnualPrincipalPayment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentAnnualPrincipalPayment",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Annual Principal Payment",
        "terseLabel": "Principal payments",
        "documentation": "Amount of the total principal payments made during the annual reporting period."
       }
      }
     },
     "auth_ref": [
      "r16"
     ]
    },
    "us-gaap_DebtInstrumentDecreaseForgiveness": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentDecreaseForgiveness",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Letter of credit facility",
        "label": "Debt Instrument, Decrease, Forgiveness",
        "documentation": "Decrease for amounts of indebtedness forgiven by the holder of the debt instrument."
       }
      }
     },
     "auth_ref": [
      "r786"
     ]
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentFaceAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Estimated present value",
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Short-term premium finance",
        "documentation": "Face (par) amount of debt instrument at time of issuance."
       }
      }
     },
     "auth_ref": [
      "r81",
      "r82",
      "r366",
      "r544",
      "r727",
      "r728"
     ]
    },
    "us-gaap_DebtInstrumentFrequencyOfPeriodicPayment": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentFrequencyOfPeriodicPayment",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt instrument, frequency of periodic payment",
        "label": "Debt Instrument, Frequency of Periodic Payment",
        "documentation": "Description of the frequency of periodic payments (monthly, quarterly, annual)."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r84"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Effective rate on Note",
        "terseLabel": "Stated interest rate (percentage)",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r367"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateTerms": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentInterestRateTerms",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt instrument, interest rate terms",
        "label": "Debt Instrument, Interest Rate Terms",
        "documentation": "Description of the interest rate as being fixed or variable, and, if variable, identification of the index or rate on which the interest rate is based and the number of points or percentage added to that index or rate to set the rate, and other pertinent information, such as frequency of rate resets."
       }
      }
     },
     "auth_ref": [
      "r23"
     ]
    },
    "us-gaap_DebtInstrumentIssuedPrincipal": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentIssuedPrincipal",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt instrument, issued, principal",
        "label": "Debt Instrument, Issued, Principal",
        "documentation": "Amount of principal of debt issued."
       }
      }
     },
     "auth_ref": [
      "r627"
     ]
    },
    "us-gaap_DebtInstrumentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r229",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r372",
      "r377",
      "r378",
      "r379",
      "r380",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r390",
      "r544",
      "r726",
      "r727",
      "r728",
      "r729",
      "r730",
      "r786"
     ]
    },
    "us-gaap_DebtInstrumentMaturityDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentMaturityDate",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maturity date",
        "label": "Debt Instrument, Maturity Date",
        "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r183",
      "r726",
      "r835"
     ]
    },
    "us-gaap_DebtInstrumentMaturityDateDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentMaturityDateDescription",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maturity date, description",
        "label": "Debt Instrument, Maturity Date, Description",
        "documentation": "Description of the maturity date of the debt instrument including whether the debt matures serially and, if so, a brief description of the serial maturities."
       }
      }
     },
     "auth_ref": [
      "r24"
     ]
    },
    "us-gaap_DebtInstrumentMaturityDateRangeEnd1": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentMaturityDateRangeEnd1",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt instrument, maturity date, end",
        "label": "Debt Instrument, Maturity Date Range, End",
        "documentation": "Latest date the outstanding debt instruments are required to be repaid, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r24"
     ]
    },
    "us-gaap_DebtInstrumentMaturityDateRangeStart1": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentMaturityDateRangeStart1",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt instrument, maturity date, start",
        "label": "Debt Instrument, Maturity Date Range, Start",
        "documentation": "Earliest date the outstanding debt instruments are required to be repaid, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r24"
     ]
    },
    "us-gaap_DebtInstrumentPaymentTerms": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentPaymentTerms",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Payment Terms",
        "terseLabel": "short-term premium finance , Number of installment",
        "documentation": "Description of the payment terms of the debt instrument (for example, whether periodic payments include principal and frequency of payments) and discussion about any contingencies associated with the payment."
       }
      }
     },
     "auth_ref": [
      "r25",
      "r84"
     ]
    },
    "gifi_DebtInstrumentPaymentsOfLoan": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DebtInstrumentPaymentsOfLoan",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loan payments",
        "label": "Debt Instrument Payments Of Loan",
        "documentation": "Debt instrument payments of loan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentPeriodicPayment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentPeriodicPayment",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt instrument, periodic payment",
        "label": "Debt Instrument, Periodic Payment",
        "totalLabel": "Debt Instrument, Periodic Payment, Total",
        "documentation": "Amount of the required periodic payments including both interest and principal payments."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r84"
     ]
    },
    "us-gaap_DebtInstrumentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Long-Term Debt Instruments [Table]",
        "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r59",
      "r60",
      "r80",
      "r81",
      "r82",
      "r83",
      "r146",
      "r147",
      "r229",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r372",
      "r377",
      "r378",
      "r379",
      "r380",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r390",
      "r544",
      "r726",
      "r727",
      "r728",
      "r729",
      "r730",
      "r786"
     ]
    },
    "gifi_DecreaseToContractReceivablesAndRetainageNetAndContractAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DecreaseToContractReceivablesAndRetainageNetAndContractAssets",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Decrease to contract receivables and retainage, net and contract assets",
        "label": "Decrease to Contract Receivables and Retainage, Net and Contract Assets",
        "documentation": "Decrease to contract receivables and retainage, net and contract assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Federal",
        "label": "Deferred Federal Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r788",
      "r827",
      "r830"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total deferred",
        "label": "Deferred Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r154",
      "r181",
      "r486",
      "r487",
      "r788"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred",
        "label": "Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "gifi_DeferredTaxAssetsLiabilitiesGross",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Deferred Tax Liabilities, Gross, Total",
        "negatedTotalLabel": "Total deferred tax liabilities",
        "label": "Deferred Tax Liabilities, Gross",
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences."
       }
      }
     },
     "auth_ref": [
      "r106",
      "r107",
      "r160",
      "r473"
     ]
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "State",
        "label": "Deferred State and Local Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r788",
      "r827",
      "r830"
     ]
    },
    "gifi_DeferredTaxAssetsAccruedLossesOnUncompletedContracts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DeferredTaxAssetsAccruedLossesOnUncompletedContracts",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued losses on uncompleted contracts",
        "label": "Deferred Tax Assets Accrued Losses On Uncompleted Contracts",
        "documentation": "Deferred tax assets, Accrued losses on uncompleted contracts."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DeferredTaxAssetsDebtInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DeferredTaxAssetsDebtInterest",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt interest",
        "label": "Deferred Tax Assets Debt Interest",
        "documentation": "Deferred tax assets debt interest."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsGross",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "gifi_DeferredTaxAssetsLiabilitiesGross",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total deferred tax assets",
        "terseLabel": "Total deferred tax assets",
        "label": "Deferred Tax Assets, Gross",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards."
       }
      }
     },
     "auth_ref": [
      "r474"
     ]
    },
    "us-gaap_DeferredTaxAssetsGrossAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsGrossAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax assets",
        "label": "Deferred Tax Assets, Gross [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DeferredTaxAssetsLeases": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DeferredTaxAssetsLeases",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Leases",
        "label": "Deferred Tax Assets Leases",
        "documentation": "Deferred tax assets leases."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DeferredTaxAssetsLiabilitiesGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DeferredTaxAssetsLiabilitiesGross",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net deferred tax assets",
        "label": "Deferred Tax Assets Liabilities Gross",
        "documentation": "Deferred tax assets (liabilities), gross."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Deferred Tax Assets, Operating Loss Carryforwards, Total",
        "terseLabel": "Federal net operating losses",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r826"
     ]
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "State net operating losses",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards, State and Local",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible state and local operating loss carryforwards."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r826"
     ]
    },
    "us-gaap_DeferredTaxAssetsOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsOther",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Deferred Tax Assets, Other",
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r826"
     ]
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsTaxCreditCarryforwardsResearch",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "R&amp;D and other tax credits",
        "label": "Deferred Tax Assets, Tax Credit Carryforwards, Research",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards."
       }
      }
     },
     "auth_ref": [
      "r68",
      "r69",
      "r826"
     ]
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee benefits",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Employee Benefits",
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from employee benefits, classified as other."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r826"
     ]
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock based compensation expense",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r826"
     ]
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsValuationAllowance",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Deferred Tax Assets, Valuation Allowance, Total",
        "negatedLabel": "Valuation allowance",
        "terseLabel": "Valuation allowance",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "us-gaap_DeferredTaxLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Deferred Tax Liabilities, Net, Total",
        "negatedTotalLabel": "Net deferred taxes",
        "label": "Deferred Tax Liabilities, Net",
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r67",
      "r825"
     ]
    },
    "us-gaap_DeferredTaxLiabilitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxLiabilitiesAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax liabilities",
        "label": "Deferred Tax Liabilities, Gross [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DeferredTaxLiabilitiesDepreciation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DeferredTaxLiabilitiesDepreciation",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Depreciation",
        "label": "Deferred Tax Liabilities Depreciation",
        "documentation": "Deferred tax liabilities depreciation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxLiabilitiesPrepaidExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxLiabilitiesPrepaidExpenses",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Prepaid insurance",
        "label": "Deferred Tax Liabilities, Prepaid Expenses",
        "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DeferredTransactionPrice": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DeferredTransactionPrice",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred transaction price",
        "label": "Deferred Transaction Price",
        "documentation": "Deferred transaction price."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employer discretionary contribution",
        "label": "Defined Contribution Plan, Employer Discretionary Contribution Amount",
        "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DepreciationAmortizationAndAccretionNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DepreciationAmortizationAndAccretionNet",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Depreciation, Amortization and Accretion, Net, Total",
        "terseLabel": "Depreciation expense for continuing operations",
        "label": "Depreciation, Amortization and Accretion, Net",
        "documentation": "The aggregate net amount of depreciation, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by or used in operations using the indirect method."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Depreciation, Depletion and Amortization, Total",
        "verboseLabel": "Depreciation and amortization expense",
        "terseLabel": "Depreciation and amortization",
        "label": "Depreciation, Depletion and Amortization",
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r269"
     ]
    },
    "us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DepreciationDepletionAndAmortizationPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation and Amortization Expense",
        "label": "Depreciation, Depletion, and Amortization [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for depreciation, depletion, and amortization of property and equipment costs, including methods used and estimated useful lives and how impairment of such assets is assessed and recognized."
       }
      }
     },
     "auth_ref": [
      "r718"
     ]
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disaggregation of Revenue [Line Items]",
        "label": "Disaggregation of Revenue [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r415",
      "r733",
      "r734",
      "r735",
      "r736",
      "r737",
      "r738",
      "r739"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disaggregation Of Revenue [Table]",
        "label": "Disaggregation of Revenue [Table]",
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r415",
      "r733",
      "r734",
      "r735",
      "r736",
      "r737",
      "r738",
      "r739"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Disaggregation of Revenue",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r818"
     ]
    },
    "us-gaap_DisclosureOfLongLivedAssetsHeldForSaleTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisclosureOfLongLivedAssetsHeldForSaleTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureImpairmentsAndGainLossOnAssetsHeldForSaleTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Assets Held for Sale",
        "label": "Disclosure of Long-Lived Assets Held-for-Sale [Table Text Block]",
        "documentation": "Tabular disclosure of long lived assets held for sale. Disclosure may include the description of the facts and circumstances leading to the expected disposal, manner and timing of disposal, the carrying value of the assets held for sale, the gain (loss) recognized in the income statement and the income statement caption that includes that gain (loss)."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "gifi_DisclosureOfSignificantCustomersTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DisclosureOfSignificantCustomersTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedules of Concentration of Risk, by Risk Factor",
        "label": "Disclosure Of Significant Customers Table [Text Block]",
        "documentation": "Disclosure of Significant Customers."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DiscontinuedOperationAmountsOfMaterialAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DiscontinuedOperationAmountsOfMaterialAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Material assets of discontinued operations",
        "label": "Discontinued Operation Amounts Of Material Assets",
        "documentation": "Discontinued operation amounts of material assets."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DiscontinuedOperationAmountsOfMaterialLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DiscontinuedOperationAmountsOfMaterialLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Material liabilities of discontinued operations",
        "label": "Discontinued Operation Amounts Of Material Liabilities",
        "documentation": "Discontinued operation amounts of material liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_DiscontinuedOperationAmountsOfMaterialOperatingResults": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DiscontinuedOperationAmountsOfMaterialOperatingResults",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Material operating results of discontinued operations",
        "label": "Discontinued Operation Amounts Of Material Operating Results",
        "documentation": "Discontinued operation amounts of material operating results."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DiscontinuedOperationTaxEffectOfDiscontinuedOperation",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Discontinued Operation, Tax Effect of Discontinued Operation, Total",
        "terseLabel": "Income tax (expense) benefit",
        "label": "Discontinued Operation, Tax Effect of Discontinued Operation",
        "documentation": "Amount of tax expense (benefit) related to a discontinued operation. Includes, but is not limited to, tax expense (benefit) related to income (loss) from operations during the phase-out period, tax expense (benefit) related to gain (loss) on disposal, tax expense (benefit) related to gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and tax expense (benefit) related to adjustments of a prior period gain (loss) on disposal."
       }
      }
     },
     "auth_ref": [
      "r89",
      "r90",
      "r91",
      "r92",
      "r98",
      "r103",
      "r467",
      "r485",
      "r490"
     ]
    },
    "us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DiscontinuedOperationsAndDisposalGroupsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Discontinued Operations and Disposal Groups [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupClassificationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupClassificationAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Classification",
        "label": "Disposal Group Classification [Axis]",
        "documentation": "Information by disposal group classification."
       }
      }
     },
     "auth_ref": [
      "r191"
     ]
    },
    "us-gaap_DisposalGroupClassificationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupClassificationDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Classification",
        "label": "Disposal Group Classification [Domain]",
        "documentation": "Component or group of components disposed of, including but not limited to, disposal group held-for-sale or disposed of by sale, disposed of by means other than sale, and discontinued operations."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupHeldforsaleNotDiscontinuedOperationsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group, Held-for-sale, Not Discontinued Operations",
        "label": "Disposal Group, Held-for-Sale, Not Discontinued Operations [Member]",
        "documentation": "Disposal group that is classified as held-for-sale. Excludes disposals classified as discontinued operations."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r14",
      "r191"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupIncludingDiscontinuedOperationConsideration",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Transaction price",
        "label": "Disposal Group, Including Discontinued Operation, Consideration",
        "documentation": "Amount of consideration received or receivable for the disposal of assets and liabilities, including discontinued operation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of revenue",
        "label": "Disposal Group, Including Discontinued Operation, Costs of Goods Sold",
        "documentation": "Amount of costs of goods sold attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r192"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "General and administrative expense",
        "label": "Disposal Group, Including Discontinued Operation, General and Administrative Expense",
        "documentation": "Amount of general and administrative expense attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r99"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Recast for discontinued operations",
        "terseLabel": "Recast for discontinued operations (2)",
        "label": "Disposal Group, Including Discontinued Operation, Gross Profit (Loss)",
        "totalLabel": "Gross profit",
        "documentation": "Amount of gross profit attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r192"
     ]
    },
    "gifi_DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DisposalGroupIncludingDiscontinuedOperationImpairmentsAndGainLossOnAssetsHeldForSale",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Impairments and (gain) loss on assets held for sale, net",
        "label": "Disposal Group Including Discontinued Operation Impairments And Gain Loss On Assets Held For Sale",
        "documentation": "Disposal group including discontinued operation impairments and gain loss on assets held for sale."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Operating loss",
        "terseLabel": "Recast for discontinued operations",
        "label": "Disposal Group, Including Discontinued Operation, Operating Income (Loss)",
        "documentation": "Amount of operating income (loss) attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r99"
     ]
    },
    "gifi_DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOtherIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other (income) expense, net",
        "terseLabel": "Other (income) expense, net",
        "label": "Disposal Group Including Discontinued Operation Other Income Expense",
        "documentation": "Disposal group including discontinued operation other income (expense)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupIncludingDiscontinuedOperationRevenue",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue",
        "label": "Disposal Group, Including Discontinued Operation, Revenue",
        "documentation": "Amount of revenue attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r192"
     ]
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Shipyard Transaction and Discontinued Operations",
        "label": "Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]",
        "documentation": "The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component."
       }
      }
     },
     "auth_ref": [
      "r86",
      "r136"
     ]
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentAnnualReport",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Annual Report",
        "label": "Document Annual Report",
        "documentation": "Boolean flag that is true only for a form used as an annual report."
       }
      }
     },
     "auth_ref": [
      "r764",
      "r765",
      "r766"
     ]
    },
    "dei_DocumentFinStmtErrorCorrectionFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFinStmtErrorCorrectionFlag",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Financial Statement Error Correction [Flag]",
        "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction."
       }
      }
     },
     "auth_ref": [
      "r764",
      "r765",
      "r766",
      "r768"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Fiscal Period Focus",
        "label": "Document Fiscal Period Focus",
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Fiscal Year Focus",
        "label": "Document Fiscal Year Focus",
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Transition Report",
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r767"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentType",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "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_DocumentsIncorporatedByReferenceTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Documents Incorporated by Reference",
        "label": "Documents Incorporated by Reference [Text Block]",
        "documentation": "Documents incorporated by reference."
       }
      }
     },
     "auth_ref": [
      "r762"
     ]
    },
    "us-gaap_DomesticCountryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DomesticCountryMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Domestic Tax Authority",
        "label": "Domestic Tax Authority [Member]",
        "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Per share data:",
        "label": "Earnings Per Share [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareBasic",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Basic",
        "totalLabel": "Basic loss per share",
        "terseLabel": "Basic loss per common share",
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r217",
      "r238",
      "r239",
      "r241",
      "r242",
      "r244",
      "r249",
      "r251",
      "r254",
      "r255",
      "r256",
      "r257",
      "r525",
      "r526",
      "r578",
      "r591",
      "r720"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareDiluted",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Diluted",
        "totalLabel": "Diluted loss per share",
        "terseLabel": "Diluted loss per common share",
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r217",
      "r238",
      "r239",
      "r241",
      "r242",
      "r244",
      "r251",
      "r254",
      "r255",
      "r256",
      "r257",
      "r525",
      "r526",
      "r578",
      "r591",
      "r720"
     ]
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerSharePolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income (Loss) Per Share",
        "label": "Earnings Per Share, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements."
       }
      }
     },
     "auth_ref": [
      "r37",
      "r38"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income tax (expense) benefit",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r468"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effective Income Tax Rate Reconciliation, Percent [Abstract]",
        "label": "Effective Income Tax Rate Reconciliation, Percent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "U.S. statutory rate",
        "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent",
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)."
       }
      }
     },
     "auth_ref": [
      "r228",
      "r468",
      "r488"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Change in valuation allowance",
        "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent",
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r824",
      "r831"
     ]
    },
    "gifi_EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "EffectiveIncomeTaxRateReconciliationIncreaseDecreasePercentAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase (decrease) resulting from:",
        "label": "Effective Income Tax Rate Reconciliation Increase Decrease Percent [Abstract]",
        "documentation": "Effective Income Tax Rate Reconciliation, Increase (Decrease), Percent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting of common stock",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Percent",
        "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r824",
      "r831"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "State income taxes",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent",
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit)."
       }
      }
     },
     "auth_ref": [
      "r824",
      "r831"
     ]
    },
    "gifi_EffectiveIncomeTaxReconciliationPermanentDifferencesPercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "EffectiveIncomeTaxReconciliationPermanentDifferencesPercent",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Permanent differences",
        "label": "Effective Income Tax Reconciliation Permanent Differences Percent",
        "documentation": "Effective income tax reconciliation, permanent differences, percent."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails": {
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesReconciliationOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Return to provision and other",
        "label": "Effective Income Tax Reconciliation Return To Provision And Other Percent",
        "documentation": "Effective income tax reconciliation return to provision and other percent."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Cash Used to Settle Award",
        "terseLabel": "Cash-settled RSU paid",
        "documentation": "Aggregate cash paid by the entity during the period to settle equity instruments granted under equity-based payment arrangements."
       }
      }
     },
     "auth_ref": [
      "r455"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recognition of compensation cost, weighted average period",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r454"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total unrecognized compensation costs",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount",
        "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r820"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total income tax (expense) benefit under share-based compensation",
        "label": "Share-Based Payment Arrangement, Expense, Tax Benefit",
        "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r453"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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_EntityAddressAddressLine2": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine2",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, Address Line Two",
        "label": "Entity Address, Address Line Two",
        "documentation": "Address Line 2 such as Street or Suite number"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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/2023",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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/2023",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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/2023",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r761"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Common Stock, Shares Outstanding",
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Current Reporting Status",
        "label": "Entity Current Reporting Status",
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r761"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity File Number",
        "label": "Securities Act File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Filer Category",
        "label": "Entity Filer Category",
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Interactive Data Current",
        "label": "Entity Interactive Data Current",
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)."
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityPublicFloat",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Public Float",
        "label": "Entity Public Float",
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r761"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Shell Company",
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Small Business",
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r761"
     ]
    },
    "dei_EntityVoluntaryFilers": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityVoluntaryFilers",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Voluntary Filers",
        "label": "Entity Voluntary Filers",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityWellKnownSeasonedIssuer",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Well-known Seasoned Issuer",
        "label": "Entity Well-known Seasoned Issuer",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A."
       }
      }
     },
     "auth_ref": [
      "r770"
     ]
    },
    "us-gaap_EquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityClassOfTreasuryStockLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityClassOfTreasuryStockLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity, Class of Treasury Stock [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Component",
        "label": "Equity Component [Domain]",
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r187",
      "r214",
      "r215",
      "r216",
      "r230",
      "r231",
      "r232",
      "r235",
      "r245",
      "r247",
      "r259",
      "r303",
      "r309",
      "r394",
      "r456",
      "r457",
      "r458",
      "r482",
      "r483",
      "r508",
      "r510",
      "r511",
      "r512",
      "r513",
      "r515",
      "r524",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r561",
      "r613",
      "r614",
      "r615",
      "r631",
      "r683"
     ]
    },
    "gifi_EstimateChangeInWorkingCapitalForDivestedShipyardContracts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "EstimateChangeInWorkingCapitalForDivestedShipyardContracts",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Estimate change in working capital for divested shipyard contracts",
        "label": "Estimate Change In Working Capital For Divested Shipyard Contracts",
        "documentation": "Estimate change in working capital for divested shipyard contracts."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_EstimatedCostOfConsoleReplacement": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "EstimatedCostOfConsoleReplacement",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Estimated cost of console replacement.",
        "label": "Estimated Cost of Console Replacement",
        "terseLabel": "Estimated cost of console replacement range"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_FabricationAndServicesSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "FabricationAndServicesSegmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "F&amp;S",
        "label": "Fabrication And Services Segment [Member]",
        "documentation": "Fabrication and Services Segment."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_FabricationSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "FabricationSegmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fabrication",
        "label": "Fabrication Segment [Member]",
        "documentation": "Fabrication segment.",
        "verboseLabel": "Fabrication Division"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementPolicyPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Measurements",
        "label": "Fair Value Measurement, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_FerryProjectsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "FerryProjectsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Ferry Projects",
        "label": "Ferry Projects [Member]",
        "documentation": "Ferry projects."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedCustomerRelationshipsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedCustomerRelationshipsGross",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer relationships",
        "label": "Finite-Lived Customer Relationships, Gross",
        "documentation": "Gross carrying amount before accumulated amortization as of the balance sheet date to an asset acquired in a business combination representing a favorable existing relationship with customers having a finite beneficial life."
       }
      }
     },
     "auth_ref": [
      "r134"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets, useful life",
        "label": "Finite-Lived Intangible Asset, Useful Life",
        "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Accumulated amortization",
        "terseLabel": "Accumulated amortization",
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r335"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets amortization expense, 2024",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Rolling 12 Months",
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the next rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets amortization expense, 2028",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Rolling Year Five",
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the fifth rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets amortization expense, 2027",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Rolling Year Four",
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the fourth rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets amortization expense, 2026",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Rolling Year Three",
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the third rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets amortization expense, 2025",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Rolling Year Two",
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the second rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finite-Lived Intangible Assets by Major Class",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "documentation": "Information by major type or class of finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r332",
      "r334",
      "r335",
      "r337",
      "r572",
      "r576"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r572"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company."
       }
      }
     },
     "auth_ref": [
      "r51",
      "r53"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Intangible assets, net",
        "periodEndLabel": "Finite-Lived Intangible Assets, Net, Ending Balance",
        "periodStartLabel": "Finite-Lived Intangible Assets, Net, Beginning Balance",
        "terseLabel": "Intangible balance",
        "label": "Finite-Lived Intangible Assets, Net",
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r134",
      "r572"
     ]
    },
    "us-gaap_FixedPriceContractMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FixedPriceContractMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fixed-price and unit-rate",
        "label": "Fixed-Price Contract [Member]",
        "documentation": "Contract with customer in which amount of consideration is fixed."
       }
      }
     },
     "auth_ref": [
      "r736"
     ]
    },
    "gifi_ForgivenessOfPrincipalAndInterestOfPPPLoan": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ForgivenessOfPrincipalAndInterestOfPPPLoan",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forgiveness of principal and interest of PPP Loan",
        "label": "Forgiveness Of Principal And Interest Of P P P Loan",
        "documentation": "Forgiveness of principal and interest of PPP Loan."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_FortyVehicleFerryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "FortyVehicleFerryMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forty-Vehicle Ferry",
        "label": "Forty Vehicle Ferry [Member]",
        "documentation": "Forty vehicle ferry."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FurnitureAndFixturesMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Furniture and fixtures",
        "label": "Furniture and Fixtures [Member]",
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "FutureRepairCostsAssociatedWithInsurancePaymentsReceivedForBuildings",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Future repair costs associated with insurance payments received for buildings",
        "label": "Future Repair Costs Associated With Insurance Payments Received For Buildings",
        "documentation": "Future repair costs associated with insurance payments received for buildings."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GainLossOnDispositionOfAssets1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainLossOnDispositionOfAssets1",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gain (Loss) on Disposition of Assets, Total",
        "terseLabel": "Gain (loss) on sale of assets",
        "label": "Gain (Loss) on Disposition of Assets",
        "negatedLabel": "Loss on sale or disposal of fixed assets, net",
        "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee."
       }
      }
     },
     "auth_ref": [
      "r784"
     ]
    },
    "gifi_GainLossOnInsuranceRecovery": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "GainLossOnInsuranceRecovery",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Gain on insurance recovery",
        "label": "Gain Loss On Insurance Recovery",
        "documentation": "Gain loss on insurance recovery."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Gain or loss recognized on sale of purchase option",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment",
        "totalLabel": "Gain (Loss) on Disposition of Property Plant Equipment, Total",
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "gifi_GainOnInterruptionsInsuranceRecovery": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "GainOnInterruptionsInsuranceRecovery",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain on interruptions insurance recovery.",
        "label": "Gain on interruptions insurance recovery"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_GainOnSettlementOfContractDispute": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "GainOnSettlementOfContractDispute",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Gain on settlement of contract dispute",
        "terseLabel": "Gain on settlement of contract dispute for project completed in 2015",
        "label": "Gain On Settlement Of Contract Dispute",
        "documentation": "Gain on settlement of contract dispute."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GainsLossesOnExtinguishmentOfDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainsLossesOnExtinguishmentOfDebt",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gain (Loss) on Extinguishment of Debt, Total",
        "negatedLabel": "Gain on extinguishment of debt",
        "terseLabel": "Gain on extinguishment of debt",
        "label": "Gain (Loss) on Extinguishment of Debt",
        "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r57",
      "r58"
     ]
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "General and Administrative Expense, Total",
        "terseLabel": "General and administrative expense",
        "label": "General and Administrative Expense",
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line."
       }
      }
     },
     "auth_ref": [
      "r123",
      "r667"
     ]
    },
    "gifi_GeneralLiabilityArrangementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "GeneralLiabilityArrangementMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "General Liability Arrangement",
        "label": "General Liability Arrangement [Member]",
        "documentation": "General liability arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Goodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Goodwill, Ending Balance",
        "periodStartLabel": "Goodwill, Beginning Balance",
        "totalLabel": "Goodwill, Total",
        "terseLabel": "Goodwill",
        "label": "Goodwill",
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r199",
      "r320",
      "r577",
      "r725",
      "r746",
      "r803",
      "r804"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GoodwillImpairmentLoss",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Goodwill impairment",
        "label": "Goodwill, Impairment Loss",
        "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r321",
      "r327",
      "r331",
      "r725"
     ]
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Gross profit (loss)",
        "terseLabel": "Gross profit (loss) from continuing operations, as adjusted",
        "label": "Gross Profit",
        "totalLabel": "Gross profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r227",
      "r264",
      "r278",
      "r284",
      "r287",
      "r298",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r359",
      "r361",
      "r363",
      "r364",
      "r530",
      "r722",
      "r812"
     ]
    },
    "us-gaap_HeldToMaturitySecuritiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "HeldToMaturitySecuritiesCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Short-term investments",
        "label": "Debt Securities, Held-to-Maturity, Amortized Cost, before Allowance for Credit Loss, Current",
        "documentation": "Amount, before allowance for credit loss, of investment in debt security measured at amortized cost (held-to-maturity), classified as current."
       }
      }
     },
     "auth_ref": [
      "r297",
      "r797",
      "r801"
     ]
    },
    "gifi_HoumaFacilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "HoumaFacilitiesMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Houma Facilities",
        "label": "Houma Facilities [Member]",
        "documentation": "Houma facilities."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_HurricaneIdaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "HurricaneIdaMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Hurricane Ida",
        "label": "Hurricane Ida [Member]",
        "documentation": "Hurricane Ida."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_HurricaneLauraMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "HurricaneLauraMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Hurricane Laura",
        "label": "Hurricane Laura [Member]",
        "documentation": "Hurricane Laura."
       }
      }
     },
     "auth_ref": []
    },
    "dei_IcfrAuditorAttestationFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "IcfrAuditorAttestationFlag",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ICFR Auditor Attestation Flag",
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "auth_ref": [
      "r764",
      "r765",
      "r766"
     ]
    },
    "gifi_ImpactOfHurricaneIdaDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ImpactOfHurricaneIdaDescription",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Impact of Hurricane Ida, description",
        "label": "Impact Of Hurricane Ida Description",
        "documentation": "Impact of Hurricane Ida, description."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ImpairmentOfLongLivedAssetsToBeDisposedOf": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ImpairmentOfLongLivedAssetsToBeDisposedOf",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Impairment of asset held for sale",
        "terseLabel": "Estimated loss related to impairment of long lived assets and transaction costs",
        "label": "Impairment of Long-Lived Assets to be Disposed of",
        "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long-lived assets held for abandonment, exchange or sale."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r138"
     ]
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-Lived Assets",
        "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r143"
     ]
    },
    "gifi_ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ImpairmentsAndGainLossOnAssetsHeldForSaleDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIMPAIRMENTSANDGAINLOSSONASSETSHELDFORSALE"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "IMPAIRMENTS AND (GAIN) LOSS ON ASSETS HELD FOR SALE",
        "label": "Impairments And Gain Loss On Assets Held For Sale Disclosure [Text Block]",
        "documentation": "The entire disclosure related to impairments and (gain) loss on assets held for sale."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeLossFromContinuingOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperations",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Loss from continuing operations",
        "terseLabel": "Loss from continuing operations",
        "label": "Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of income (loss) from continuing operations attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r120",
      "r129",
      "r238",
      "r239",
      "r241",
      "r242",
      "r253",
      "r256"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperations",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Income/loss before income taxes",
        "totalLabel": "Loss before income taxes",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r116",
      "r166",
      "r264",
      "r278",
      "r284",
      "r287",
      "r579",
      "r588",
      "r722"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperationsPerBasicShare",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_EarningsPerShareBasic",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income (Loss) from Continuing Operations, Per Basic Share",
        "terseLabel": "Basic loss from continuing operations",
        "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r115",
      "r165",
      "r167",
      "r217",
      "r234",
      "r238",
      "r239",
      "r241",
      "r242",
      "r251",
      "r254",
      "r255",
      "r526",
      "r578",
      "r856"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperationsPerDilutedShare",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_EarningsPerShareDiluted",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income (Loss) from Continuing Operations, Per Diluted Share",
        "terseLabel": "Diluted loss from continuing operations",
        "documentation": "The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r115",
      "r217",
      "r234",
      "r238",
      "r239",
      "r241",
      "r242",
      "r251",
      "r254",
      "r255",
      "r256",
      "r526",
      "r578",
      "r856"
     ]
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Loss from discontinued operations, net of taxes",
        "label": "Income (Loss) from Discontinued Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "documentation": "Amount after tax of income (loss) from a discontinued operation including the portion attributable to the noncontrolling interest. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal."
       }
      }
     },
     "auth_ref": [
      "r88",
      "r89",
      "r90",
      "r91",
      "r92",
      "r103",
      "r192",
      "r491",
      "r589"
     ]
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income (Loss) from Discontinued Operations, Net of Tax, Attributable to Parent, Total",
        "terseLabel": "Loss from discontinued operations, net of taxes",
        "label": "Income (Loss) from Discontinued Operations, Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of income (loss) from a discontinued operation attributable to the parent. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal."
       }
      }
     },
     "auth_ref": [
      "r88",
      "r89",
      "r90",
      "r91",
      "r92",
      "r98",
      "r103",
      "r157"
     ]
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_EarningsPerShareBasic",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share, Total",
        "label": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share",
        "terseLabel": "Basic loss from discontinued operations",
        "documentation": "Per basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r217",
      "r252",
      "r254",
      "r255",
      "r852",
      "r856"
     ]
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_EarningsPerShareDiluted",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share, Total",
        "label": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share",
        "terseLabel": "Diluted loss from discontinued operations",
        "documentation": "Per diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r158",
      "r252",
      "r254",
      "r255"
     ]
    },
    "gifi_IncomeLossPerShareAndShareholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "IncomeLossPerShareAndShareholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income (Loss) Per Share And Shareholders' Equity [Abstract]",
        "documentation": "Income (Loss) Per Share And Shareholders' Equity."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_IncomeLossPerShareAndShareholdersEquityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "IncomeLossPerShareAndShareholdersEquityTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquity1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "INCOME (LOSS) PER SHARE AND SHAREHOLDERS' EQUITY",
        "label": "Income (Loss) Per Share And Shareholders' Equity [Text Block]",
        "documentation": "Income (Loss) Per Share And Shareholders' Equity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Statement Balance Sheet And Additional Disclosures By Disposal Groups Including Discontinued Operations [Line Items]",
        "label": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Statement Balance Sheet And Additional Disclosures By Disposal Groups Including Discontinued Operations [Table]",
        "label": "Disposal Groups, Including Discontinued Operations [Table]",
        "documentation": "Disclosure of information about a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r14",
      "r17",
      "r87",
      "r93",
      "r94",
      "r95",
      "r96",
      "r97",
      "r102",
      "r104",
      "r105",
      "r142"
     ]
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementLocationAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Statement Location",
        "label": "Income Statement Location [Axis]",
        "documentation": "Information by location in the income statement."
       }
      }
     },
     "auth_ref": [
      "r338",
      "r341",
      "r668"
     ]
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementLocationDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Statement Location",
        "label": "Income Statement Location [Domain]",
        "documentation": "Location in the income statement."
       }
      }
     },
     "auth_ref": [
      "r341",
      "r668"
     ]
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxAuthorityAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Tax Authority",
        "label": "Income Tax Authority [Axis]",
        "documentation": "Information by tax jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxAuthorityDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Tax Authority",
        "label": "Income Tax Authority [Domain]",
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxContingencyLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxContingencyLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Tax Contingency [Line Items]",
        "label": "Income Tax Contingency [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxContingencyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxContingencyTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Tax Contingency [Table]",
        "label": "Income Tax Contingency [Table]",
        "documentation": "Disclosure of information about tax positions taken in the tax returns filed or to be filed for which it is more likely than not that the tax position will not be sustained upon examination by taxing authorities and other income tax contingencies. Includes, but is not limited to, interest and penalties, reconciliation of unrecognized tax benefits, unrecognized tax benefits that would affect the effective tax rate, tax years that remain subject to examination by tax jurisdictions, and information about positions for which it is reasonably possible that amounts unrecognized will significantly change within 12 months."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r70",
      "r152",
      "r153"
     ]
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureINCOMETAXES"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "INCOME TAXES",
        "label": "Income Tax Disclosure [Text Block]",
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information."
       }
      }
     },
     "auth_ref": [
      "r228",
      "r464",
      "r469",
      "r470",
      "r477",
      "r484",
      "r489",
      "r492",
      "r493",
      "r630"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperations",
       "weight": -1.0,
       "order": 1.0
      },
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Income tax (expense) benefit",
        "totalLabel": "Income tax (expense) benefit",
        "label": "Income Tax Expense (Benefit)",
        "negatedTotalLabel": "Income tax (expense) benefit",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r169",
      "r182",
      "r246",
      "r247",
      "r272",
      "r467",
      "r485",
      "r592"
     ]
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Taxes",
        "label": "Income Tax, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements."
       }
      }
     },
     "auth_ref": [
      "r213",
      "r465",
      "r466",
      "r470",
      "r471",
      "r476",
      "r478",
      "r626"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Increase (Decrease) in Accounts Payable, Total",
        "terseLabel": "Accounts payable",
        "label": "Increase (Decrease) in Accounts Payable",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Increase (Decrease) in Accrued Liabilities, Total",
        "terseLabel": "Accrued expenses and other current liabilities",
        "label": "Increase (Decrease) in Accrued Liabilities",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInContractWithCustomerAsset",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Contract assets",
        "label": "Increase (Decrease) in Contract with Customer, Asset",
        "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time."
       }
      }
     },
     "auth_ref": [
      "r783"
     ]
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInContractWithCustomerLiability",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract liabilities",
        "label": "Increase (Decrease) in Contract with Customer, Liability",
        "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r569",
      "r783"
     ]
    },
    "us-gaap_IncreaseDecreaseInInterestPayableNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInInterestPayableNet",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued interest expense",
        "label": "Increase (Decrease) in Interest Payable, Net",
        "documentation": "The increase (decrease) during the reporting period in interest payable, which represents the amount owed to note holders, bond holders, and other parties for interest earned on loans or credit extended to the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changes in operating assets and liabilities:",
        "label": "Increase (Decrease) in Operating Capital [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherNoncurrentAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOtherNoncurrentAssets",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Decrease to other noncurrent assets",
        "label": "Increase (Decrease) in Other Noncurrent Assets",
        "documentation": "Amount of increase (decrease) in noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r783"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Noncurrent assets and liabilities, net",
        "label": "Increase (Decrease) in Other Noncurrent Assets and Liabilities, Net",
        "documentation": "Amount of increase (decrease) in noncurrent operating assets after deduction of noncurrent operating liabilities classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_IncreaseDecreaseInPrepaidExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "IncreaseDecreaseInPrepaidExpenseAndOtherAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Prepaid expenses, inventory and other current assets",
        "label": "Increase Decrease In Prepaid Expense And Other Assets",
        "documentation": "Increase (decrease) in prepaid expense and other assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInReceivables",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Increase (Decrease) in Receivables, Total",
        "negatedLabel": "Contract receivables and retainage, net",
        "label": "Increase (Decrease) in Receivables",
        "documentation": "The increase (decrease) during the reporting period in the total amount due within one year (or one operating cycle) from all parties, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-Lived Intangible Assets [Axis]",
        "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit."
       }
      }
     },
     "auth_ref": [
      "r333",
      "r336"
     ]
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-Lived Intangible Assets, Major Class Name [Domain]",
        "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of the company."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r135"
     ]
    },
    "gifi_InsuranceFinanceAndGeneralLiabilityArrangementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "InsuranceFinanceAndGeneralLiabilityArrangementsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Insurance Finance and General Liability Arrangements",
        "label": "Insurance Finance And General Liability Arrangements Member",
        "documentation": "Insurance finance and general liability."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InsuranceRecoveries": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InsuranceRecoveries",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insurance Recoveries",
        "terseLabel": "Gain on insurance recoveries",
        "negatedLabel": "Gain on insurance recoveries",
        "documentation": "The amount recovered from insurance. These recoveries reduce costs and losses that are reported as a separate line item under operating expenses."
       }
      }
     },
     "auth_ref": [
      "r122"
     ]
    },
    "us-gaap_InsuranceSettlementsReceivableNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InsuranceSettlementsReceivableNoncurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insurance Settlements Receivable, Noncurrent",
        "terseLabel": "Insurance receivables",
        "documentation": "Carrying amount due after one year of the balance sheet date (or one operating cycle, if longer) of amount due in settlement of a claim for reimbursement from an insurance company when the Company has suffered a loss covered under an insurance policy."
       }
      }
     },
     "auth_ref": [
      "r781"
     ]
    },
    "us-gaap_InsuredEventGainLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InsuredEventGainLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Gain on insurance recoveries",
        "label": "Insured Event, Gain (Loss)",
        "documentation": "Amount of excess (deficiency) of insurance recovery over the loss incurred from an insured event."
       }
      }
     },
     "auth_ref": [
      "r811"
     ]
    },
    "us-gaap_InterestIncomeExpenseNonoperatingNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestIncomeExpenseNonoperatingNet",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest (expense) income, net",
        "label": "Interest Income (Expense), Nonoperating, Net",
        "documentation": "The net amount of nonoperating interest income (expense)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest paid",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount."
       }
      }
     },
     "auth_ref": [
      "r220",
      "r223",
      "r224"
     ]
    },
    "us-gaap_IntersegmentEliminationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IntersegmentEliminationMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Eliminations",
        "label": "Intersegment Eliminations [Member]",
        "documentation": "Eliminating entries used in operating segment consolidation."
       }
      }
     },
     "auth_ref": [
      "r266",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r283",
      "r287"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Inventory, Net, Total",
        "terseLabel": "Inventory",
        "label": "Inventory, Net",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r208",
      "r715",
      "r746"
     ]
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory",
        "label": "Inventory, Policy [Policy Text Block]",
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost."
       }
      }
     },
     "auth_ref": [
      "r171",
      "r195",
      "r206",
      "r314",
      "r315",
      "r316",
      "r570",
      "r719"
     ]
    },
    "gifi_JenningsLouisianaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "JenningsLouisianaMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Jennings, Louisiana",
        "label": "Jennings Louisiana [Member]",
        "documentation": "Jennings, Louisiana [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_LCFacilityMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "LCFacilityMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "LC Facility",
        "label": "L C Facility [Member]",
        "documentation": "LC facility."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_LakeCharlesLouisianaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "LakeCharlesLouisianaMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Lake Charles, Louisiana",
        "label": "Lake Charles Louisiana [Member]",
        "documentation": "Lake Charles, Louisiana [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LandMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LandMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Land",
        "label": "Land [Member]",
        "documentation": "Part of earth's surface not covered by water."
       }
      }
     },
     "auth_ref": [
      "r819"
     ]
    },
    "gifi_LeaseDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "LeaseDescription",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Lease description",
        "label": "Lease Description",
        "documentation": "Lease description."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeLeasesPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Leases",
        "label": "Lessee, Leases [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee."
       }
      }
     },
     "auth_ref": [
      "r553"
     ]
    },
    "us-gaap_LesseeOperatingLeaseDiscountRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseDiscountRate",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease, weighted-average discount rate (percentage)",
        "label": "Lessee, Operating Lease, Discount Rate",
        "documentation": "Discount rate used by lessee to determine present value of operating lease payments."
       }
      }
     },
     "auth_ref": [
      "r744"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Minimum Rental Payments",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]",
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position."
       }
      }
     },
     "auth_ref": [
      "r839"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      },
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails2": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total lease payments",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease."
       }
      }
     },
     "auth_ref": [
      "r556"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2024",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r556"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2027",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r556"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2026",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r556"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2025",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r556"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails2": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: interest",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease."
       }
      }
     },
     "auth_ref": [
      "r556"
     ]
    },
    "us-gaap_LesseeOperatingLeaseRenewalTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseRenewalTerm",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Lease renewal term",
        "label": "Lessee, Operating Lease, Renewal Term",
        "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r838"
     ]
    },
    "us-gaap_LesseeOperatingLeaseTermOfContract": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseTermOfContract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease, term of contract",
        "label": "Lessee, Operating Lease, Term of Contract",
        "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r838"
     ]
    },
    "us-gaap_LetterOfCreditMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LetterOfCreditMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Letter of Credit",
        "label": "Letter of Credit [Member]",
        "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LettersOfCreditOutstandingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LettersOfCreditOutstandingAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total outstanding letters of credit",
        "label": "Letters of Credit Outstanding, Amount",
        "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities",
        "terseLabel": "Total liabilities",
        "label": "Liabilities",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r227",
      "r298",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r359",
      "r361",
      "r363",
      "r364",
      "r502",
      "r503",
      "r504",
      "r530",
      "r644",
      "r721",
      "r759",
      "r812",
      "r842",
      "r843"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities and shareholders\u2019 equity",
        "terseLabel": "Total liabilities and shareholders\u2019 equity",
        "label": "Liabilities and Equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r114",
      "r162",
      "r585",
      "r746",
      "r787",
      "r798",
      "r836"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "LIABILITIES AND SHAREHOLDERS\u2019 EQUITY",
        "label": "Liabilities and Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current liabilities",
        "terseLabel": "Total current liabilities",
        "label": "Liabilities, Current",
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r194",
      "r227",
      "r298",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r359",
      "r361",
      "r363",
      "r364",
      "r502",
      "r503",
      "r504",
      "r530",
      "r746",
      "r812",
      "r842",
      "r843"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current liabilities:",
        "label": "Liabilities, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCreditFacilityLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LineOfCreditFacilityLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Line Of Credit Facility [Line Items]",
        "label": "Line of Credit Facility [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r786"
     ]
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LineOfCreditFacilityTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Line Of Credit Facility [Table]",
        "label": "Line of Credit Facility [Table]",
        "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r786"
     ]
    },
    "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fees on undrawn borrowings (percentage)",
        "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage",
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility."
       }
      }
     },
     "auth_ref": []
    },
    "srt_LitigationCaseAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "LitigationCaseAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Case [Axis]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_LitigationCaseTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "LitigationCaseTypeDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Case [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_LitigationExpenseAssociatedWithRecordingLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "LitigationExpenseAssociatedWithRecordingLiability",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Litigation charge associated with recording liability",
        "label": "Litigation Expense Associated With Recording Liability",
        "documentation": "Litigation expense associated with recording liability."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_LitigationExpenseAssociatedWithWriteOffOfNetContractAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "LitigationExpenseAssociatedWithWriteOffOfNetContractAsset",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Litigation charge associated with write-off of net contract asset",
        "label": "Litigation Expense Associated With Write-off of Net Contract Asset",
        "documentation": "Litigation expense associated with write-off of net contract asset."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LitigationSettlementExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LitigationSettlementExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Litigation charge",
        "terseLabel": "Litigation Settlement, Expense",
        "label": "Litigation Settlement, Expense",
        "documentation": "Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Local Phone Number",
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermContractWithCustomerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermContractWithCustomerMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Contract with Customer [Member]",
        "terseLabel": "Long-Term Contract with Customer",
        "documentation": "Contract with customer in which duration is classified as long-term."
       }
      }
     },
     "auth_ref": [
      "r737"
     ]
    },
    "gifi_LongTermContractsOrProgramsDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "LongTermContractsOrProgramsDisclosureLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long Term Contracts Or Programs Disclosure [Line Items]",
        "label": "Long Term Contracts Or Programs Disclosure [Line Items]",
        "documentation": "Long-term Contracts or Programs Disclosure [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_LongTermContractsOrProgramsDisclosureTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "LongTermContractsOrProgramsDisclosureTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long Term Contracts Or Programs Disclosure [Table]",
        "label": "Long Term Contracts Or Programs Disclosure [Table]",
        "documentation": "Long-term Contracts or Programs Disclosure [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebt",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total maturities",
        "label": "Long-Term Debt",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r161",
      "r378",
      "r392",
      "r727",
      "r728",
      "r853"
     ]
    },
    "us-gaap_LongTermDebtCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term debt, current",
        "label": "Long-Term Debt, Current Maturities",
        "totalLabel": "Long-Term Debt, Current Maturities, Total",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r203"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Thereafter",
        "label": "Long-Term Debt, Maturity, after Year Five",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r229",
      "r815"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2024",
        "label": "Long-Term Debt, Maturity, Year One",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r229",
      "r383"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2028",
        "label": "Long-Term Debt, Maturity, Year Five",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r229",
      "r383"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2027",
        "label": "Long-Term Debt, Maturity, Year Four",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r229",
      "r383"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2026",
        "label": "Long-Term Debt, Maturity, Year Three",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r229",
      "r383"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2025",
        "label": "Long-Term Debt, Maturity, Year Two",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r229",
      "r383"
     ]
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term debt, noncurrent",
        "label": "Long-Term Debt, Excluding Current Maturities",
        "totalLabel": "Long-Term Debt, Excluding Current Maturities, Total",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r204"
     ]
    },
    "us-gaap_LossContingenciesByNatureOfContingencyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingenciesByNatureOfContingencyAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss Contingency Nature",
        "label": "Loss Contingency Nature [Axis]",
        "documentation": "Information by type of existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur."
       }
      }
     },
     "auth_ref": [
      "r346",
      "r347",
      "r348",
      "r351",
      "r807",
      "r808"
     ]
    },
    "us-gaap_LossContingenciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingenciesLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss Contingencies [Line Items]",
        "label": "Loss Contingencies [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r346",
      "r347",
      "r348",
      "r351",
      "r807",
      "r808"
     ]
    },
    "us-gaap_LossContingenciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingenciesTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss Contingencies [Table]",
        "label": "Loss Contingencies [Table]",
        "documentation": "Discloses the specific components (such as the nature, name, and date) of the loss contingency and gives an estimate of the possible loss or range of loss, or states that a reasonable estimate cannot be made. Excludes environmental contingencies, warranties and unconditional purchase obligations."
       }
      }
     },
     "auth_ref": [
      "r346",
      "r347",
      "r348",
      "r351",
      "r807",
      "r808"
     ]
    },
    "us-gaap_LossContingencyNatureDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingencyNatureDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss Contingency, Nature",
        "label": "Loss Contingency, Nature [Domain]",
        "documentation": "An existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur. Resolution of the uncertainty may confirm the incurrence of a loss or impairment of an asset or the incurrence of a liability."
       }
      }
     },
     "auth_ref": [
      "r346",
      "r347",
      "r348",
      "r351",
      "r807",
      "r808"
     ]
    },
    "gifi_LossContingencyUnderPerformanceBondsIssued": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "LossContingencyUnderPerformanceBondsIssued",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Claims under performance bonds issued",
        "label": "Loss Contingency Under Performance Bonds Issued",
        "documentation": "Loss contingency under performance bonds issued."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MachineryAndEquipmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Machinery and equipment",
        "label": "Machinery and Equipment [Member]",
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment."
       }
      }
     },
     "auth_ref": []
    },
    "srt_MajorCustomersAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MajorCustomersAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer",
        "label": "Customer [Axis]"
       }
      }
     },
     "auth_ref": [
      "r293",
      "r735",
      "r818",
      "r857",
      "r858"
     ]
    },
    "gifi_MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "MarineDockingStructuresOffshoreModulesAndMaterialSupplyProjectsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Marine Docking Structures, Offshore Modules and Material Supply Projects",
        "label": "Marine Docking Structures Offshore Modules And Material Supply Projects [Member]",
        "documentation": "Marine docking structures, offshore modules and material supply projects."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_MaturitiesOfLongTermDebtAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MaturitiesOfLongTermDebtAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Maturities of Long-Term Debt [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MaximumMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum",
        "label": "Maximum [Member]"
       }
      }
     },
     "auth_ref": [
      "r347",
      "r348",
      "r349",
      "r350",
      "r420",
      "r568",
      "r610",
      "r636",
      "r637",
      "r686",
      "r688",
      "r690",
      "r691",
      "r693",
      "r708",
      "r709",
      "r724",
      "r731",
      "r742",
      "r748",
      "r814",
      "r844",
      "r845",
      "r846",
      "r847",
      "r848",
      "r849"
     ]
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MinimumMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Minimum",
        "label": "Minimum [Member]"
       }
      }
     },
     "auth_ref": [
      "r347",
      "r348",
      "r349",
      "r350",
      "r420",
      "r568",
      "r610",
      "r636",
      "r637",
      "r686",
      "r688",
      "r690",
      "r691",
      "r693",
      "r708",
      "r709",
      "r724",
      "r731",
      "r742",
      "r748",
      "r814",
      "r844",
      "r845",
      "r846",
      "r847",
      "r848",
      "r849"
     ]
    },
    "gifi_MpsvLitigationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "MpsvLitigationMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "MPSV Litigation",
        "label": "MPSV Litigation [Member]",
        "documentation": "MPSV litigation."
       }
      }
     },
     "auth_ref": []
    },
    "srt_NameOfMajorCustomerDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "NameOfMajorCustomerDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer",
        "label": "Customer [Domain]"
       }
      }
     },
     "auth_ref": [
      "r293",
      "r735",
      "r818",
      "r857",
      "r858"
     ]
    },
    "gifi_NatureOfOperationsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NatureOfOperationsPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Nature of Operations",
        "label": "Nature Of Operations Policy [Text Block]",
        "documentation": "Nature of operations."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash used in financing activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r222"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash flows from financing activities:",
        "label": "Net Cash Provided by (Used in) Financing Activities, Continuing Operations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash used in investing activities",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r222"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash flows from investing activities:",
        "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by (used in) operating activities",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r127",
      "r128",
      "r129"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash flows from operating activities:",
        "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net loss",
        "terseLabel": "Net loss",
        "label": "Net Income (Loss)",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r118",
      "r129",
      "r168",
      "r192",
      "r211",
      "r212",
      "r216",
      "r227",
      "r234",
      "r238",
      "r239",
      "r241",
      "r242",
      "r246",
      "r247",
      "r253",
      "r264",
      "r278",
      "r284",
      "r287",
      "r298",
      "r352",
      "r353",
      "r355",
      "r356",
      "r357",
      "r359",
      "r361",
      "r363",
      "r364",
      "r526",
      "r530",
      "r590",
      "r665",
      "r681",
      "r682",
      "r722",
      "r757",
      "r812"
     ]
    },
    "gifi_NetOfEstimatedTransactionAndOtherCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NetOfEstimatedTransactionAndOtherCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net of estimated transaction and other costs",
        "label": "Net Of Estimated Transaction And Other Costs",
        "documentation": "Net of estimated transaction and other costs."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NetReceivableAmountPurportedLiquidatedDamages": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NetReceivableAmountPurportedLiquidatedDamages",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net receivable amount purported liquidated damages.",
        "label": "Net Receivable Amount Purported Liquidated Damages",
        "terseLabel": "Net receivable amount purported liquidated damages"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "New Accounting Standards",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-cash litigation charge associated with write-off of net contract asset",
        "label": "Non Cash Litigation Expense Associated With Write-off of Net Contract Asset",
        "documentation": "Non-cash litigation expense associated with write-off of net contract asset."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NoteAgreementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NoteAgreementMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Note Agreement",
        "label": "Note Agreement [Member]",
        "documentation": "Note Agreement."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfCorporateNonOperatingSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfCorporateNonOperatingSegments",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of corporate non-operating segments",
        "label": "Number Of Corporate Non Operating Segments",
        "documentation": "Number of corporate non-operating segments."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfDivestedShipyardContracts": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfDivestedShipyardContracts",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of divested shipyard contracts",
        "label": "Number Of Divested Shipyard Contracts",
        "documentation": "Number of divested shipyard contracts."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfDrydocks": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfDrydocks",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of drydocks",
        "label": "Number Of Drydocks",
        "documentation": "Number of drydocks."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfDrydocksPreviouslySupportedForShipyardDivisionOperations",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of drydocks previously supported for shipyard division operations",
        "label": "Number Of Drydocks Previously Supported For Shipyard Division Operations",
        "documentation": "Number of drydocks previously supported for shipyard division operations."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfMultiPurposeServiceVesselsProjects": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfMultiPurposeServiceVesselsProjects",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of MPSV projects",
        "label": "Number Of Multi Purpose Service Vessels Projects",
        "documentation": "Number of multi purpose service vessels projects."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NumberOfOperatingSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NumberOfOperatingSegments",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of operating segments",
        "label": "Number of Operating Segments",
        "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues."
       }
      }
     },
     "auth_ref": [
      "r794"
     ]
    },
    "gifi_NumberOfResearchVesselsProjects": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfResearchVesselsProjects",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of research vessels projects",
        "label": "Number Of Research Vessels Projects",
        "documentation": "Number of research vessels projects."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfSharesOfCommonStockUltimatelyAwardedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of shares of common stock ultimately awarded as percent of target award based on achievement of performance targets",
        "label": "Number Of Shares Of Common Stock Ultimately Awarded As Percent Of Target Award Based On Achievement Of Performance Targets",
        "documentation": "Number of shares of common stock ultimately awarded as percent of target award based on achievement of performance targets,"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of shares of common stock ultimately issued as percent of target award based on achievement of performance targets",
        "label": "Number Of Shares Of Common Stock Ultimately issued As Percent Of Target Award Based On Achievement Of Performance Targets",
        "documentation": "Number of shares of common stock ultimately issued as percent of target award based on achievement of performance targets."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfVehicleFerryProjects": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfVehicleFerryProjects",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of vehicle ferry projects",
        "label": "Number Of Vehicle Ferry Projects",
        "documentation": "Number of vehicle ferry projects."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of vehicle ferry projects with rework and construction challenges.",
        "label": "Number Of Vehicle Ferry Projects With Rework And Construction Challenges",
        "documentation": "Number of vehicle ferry projects with rework and construction challenges."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "OffshoreModulesMaterialSupplyAndSubseaStructuresProjectsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Offshore Modules, Material Supply and Subsea Structures Projects",
        "label": "Offshore Modules Material Supply And Subsea Structures Projects [Member]",
        "documentation": "Offshore Modules, Material Supply and Subsea Structures Projects."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_OperatingCyclePolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "OperatingCyclePolicyPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Cycle",
        "label": "Operating Cycle Policy Policy [Text Block]",
        "documentation": "Operating Cycle Policy."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating income (loss)",
        "totalLabel": "Operating loss",
        "terseLabel": "Operating loss",
        "label": "Operating Income (Loss)",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r264",
      "r278",
      "r284",
      "r287",
      "r722"
     ]
    },
    "us-gaap_OperatingLeaseExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Lease agreement expenses",
        "label": "Operating Lease, Expense",
        "documentation": "Amount of operating lease expense. Excludes sublease income."
       }
      }
     },
     "auth_ref": [
      "r837"
     ]
    },
    "us-gaap_OperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiability",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails2": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfMinimumFutureRentalPaymentsDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Net operating liabilities",
        "totalLabel": "Present value of lease payments",
        "terseLabel": "Present value of lease liabilities",
        "label": "Operating Lease, Liability",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease."
       }
      }
     },
     "auth_ref": [
      "r550"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Net operating liabilities",
        "terseLabel": "Current lease liability",
        "label": "Operating Lease, Liability, Current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r550"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]",
        "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]",
        "documentation": "Indicates line item in statement of financial position that includes current operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r551"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term lease liability",
        "label": "Operating Lease, Liability, Noncurrent",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r550"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]",
        "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]",
        "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r551"
     ]
    },
    "us-gaap_OperatingLeasePayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeasePayments",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease payments",
        "label": "Operating Lease, Payments",
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use."
       }
      }
     },
     "auth_ref": [
      "r552",
      "r555"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease, right-of-use asset",
        "label": "Operating Lease, Right-of-Use Asset",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r549"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]",
        "label": "Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]",
        "documentation": "Indicates line item in statement of financial position that includes operating lease right-of-use asset."
       }
      }
     },
     "auth_ref": [
      "r551"
     ]
    },
    "us-gaap_OperatingLossCarryforwards": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLossCarryforwards",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Operating Loss Carryforwards, Total",
        "terseLabel": "Operating loss carryforwards",
        "label": "Operating Loss Carryforwards",
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws."
       }
      }
     },
     "auth_ref": [
      "r68"
     ]
    },
    "gifi_OperatingLossCarryforwardsLimitationRateOnTaxableIncome": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "OperatingLossCarryforwardsLimitationRateOnTaxableIncome",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating loss carryforwards limitation rate on taxable income",
        "label": "Operating Loss Carryforwards Limitation Rate On Taxable Income",
        "documentation": "Operating loss carryforwards limitation rate on taxable income."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLossCarryforwardsLimitationsOnUse": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLossCarryforwardsLimitationsOnUse",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating loss carryforwards, limitations on use, description",
        "label": "Operating Loss Carryforwards, Limitations on Use",
        "documentation": "A description of the limitations on the use of all operating loss carryforwards available to reduce future taxable income."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_OperatingLossCarryforwardsSubjectToExpire": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "OperatingLossCarryforwardsSubjectToExpire",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating loss carryforwards subject to expire",
        "label": "Operating Loss Carryforwards Subject To Expire",
        "documentation": "Operating loss carryforwards subject to expire."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingSegmentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingSegmentsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Segments",
        "label": "Operating Segments [Member]",
        "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r287"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounting Policies [Abstract]",
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIES"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
        "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure and Significant Accounting Policies [Text Block]",
        "documentation": "The entire disclosure for the organization, consolidation and basis of presentation of financial statements disclosure, and significant accounting policies of the reporting entity. May be provided in more than one note to the financial statements, as long as users are provided with an understanding of (1) the significant judgments and assumptions made by an enterprise in determining whether it must consolidate a VIE and/or disclose information about its involvement with a VIE, (2) the nature of restrictions on a consolidated VIE's assets reported by an enterprise in its statement of financial position, including the carrying amounts of such assets, (3) the nature of, and changes in, the risks associated with an enterprise's involvement with the VIE, and (4) how an enterprise's involvement with the VIE affects the enterprise's financial position, financial performance, and cash flows. Describes procedure if disclosures are provided in more than one note to the financial statements."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r130",
      "r132",
      "r156"
     ]
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Other Assets, Noncurrent, Total",
        "terseLabel": "Other noncurrent assets",
        "label": "Other Assets, Noncurrent",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r201"
     ]
    },
    "gifi_OtherBasisOfPricingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "OtherBasisOfPricingMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Other Basis Of Pricing [Member]",
        "documentation": "Other Basis Of Pricing [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_OtherIncomeExpenseNetMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "OtherIncomeExpenseNetMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other income expense, net.",
        "label": "Other Income Expense Net [Member]",
        "terseLabel": "Other Income Expense"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_OtherIncomeExpenseNetPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "OtherIncomeExpenseNetPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other (Income) Expense, Net",
        "label": "Other Income Expense Net Policy [Text Block]",
        "documentation": "Other (income) expense, net."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherIntangibleAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherIntangibleAssetsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other Intangible Assets",
        "label": "Other Intangible Assets [Member]",
        "documentation": "Intangible assets classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherIntangibleAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other intangibles, net",
        "label": "Other Intangible Assets, Net",
        "documentation": "Amount after accumulated amortization of finite-lived and indefinite-lived intangible assets classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Other Liabilities, Noncurrent, Total",
        "terseLabel": "Other noncurrent liabilities",
        "label": "Other Liabilities, Noncurrent",
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r27"
     ]
    },
    "us-gaap_OtherOperatingIncomeExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherOperatingIncomeExpenseMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other (income) expense, net",
        "label": "Other Operating Income (Expense) [Member]",
        "documentation": "Primary financial statement caption encompassing other operating income (expense)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherOperatingIncomeExpenseNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherOperatingIncomeExpenseNet",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other (income) expense, net",
        "label": "Other Operating Income (Expense), Net",
        "terseLabel": "Other income expense net",
        "documentation": "The net amount of other operating income and expenses, the components of which are not separately disclosed on the income statement, from items that are associated with the entity's normal revenue producing operations."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_PPPLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PPPLoanMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "PPP Loan",
        "label": "P P P Loan [Member]",
        "documentation": "PPP Loan."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_PPPLoanThresholdRequiringAuditBySBA": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PPPLoanThresholdRequiringAuditBySBA",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "PPP Loan threshold requiring an audit by the SBA",
        "label": "P P P Loan Threshold Requiring Audit By S B A",
        "documentation": "PPP loan threshold requiring audit by SBA."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsForLegalSettlements": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsForLegalSettlements",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Litigation settlement payment",
        "label": "Payments for Legal Settlements",
        "documentation": "The amount of cash paid for the settlement of litigation or for other legal issues during the period."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repurchases of common stock",
        "label": "Payments for Repurchase of Common Stock",
        "documentation": "The cash outflow to reacquire common stock during the period."
       }
      }
     },
     "auth_ref": [
      "r32"
     ]
    },
    "gifi_PaymentsOnInsuranceFinanceArrangement": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PaymentsOnInsuranceFinanceArrangement",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Payments on Insurance Finance Arrangement",
        "label": "Payments On Insurance Finance Arrangement",
        "documentation": "Payments on insurance finance arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Tax payments for vested stock withholdings",
        "label": "Payment, Tax Withholding, Share-Based Payment Arrangement",
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r219"
     ]
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireBusinessesGross",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "DSS Acquisition",
        "terseLabel": "Purchase price",
        "label": "Payments to Acquire Businesses, Gross",
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price."
       }
      }
     },
     "auth_ref": [
      "r31",
      "r499"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Payments to Acquire Property, Plant, and Equipment, Total",
        "negatedLabel": "Capital expenditures",
        "terseLabel": "Capital expenditures",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets."
       }
      }
     },
     "auth_ref": [
      "r126"
     ]
    },
    "us-gaap_PaymentsToAcquireShortTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireShortTermInvestments",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchases of short-term investments",
        "label": "Payments to Acquire Short-Term Investments",
        "documentation": "The cash outflow for securities or other assets acquired, which qualify for treatment as an investing activity and are to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term."
       }
      }
     },
     "auth_ref": [
      "r125"
     ]
    },
    "gifi_PercentageOfProvisionRequiredFromProceedsReceived": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PercentageOfProvisionRequiredFromProceedsReceived",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Percentage of provision required from proceeds received in excess of sale of real estate",
        "label": "Percentage of Provision Required From Proceeds Received",
        "documentation": "Percentage of provision required from proceeds received."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_PerformanceBasedRSUAwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PerformanceBasedRSUAwardsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Performance-based RSU Awards",
        "label": "Performance Based R S U Awards [Member]",
        "documentation": "Performance-based RSU awards."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PerformanceSharesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PerformanceSharesMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Performance Shares",
        "label": "Performance Shares [Member]",
        "documentation": "Share-based payment arrangement awarded for meeting performance target."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_PreTaxLossOnEstimatedCarryValueOfNetAssetsSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PreTaxLossOnEstimatedCarryValueOfNetAssetsSold",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Pre tax loss on estimated carry value of net assets sold",
        "label": "Pre Tax Loss On Estimated Carry Value Of Net Assets Sold",
        "documentation": "Pre tax loss on estimated carry value of net assets sold."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_PrecontractCostPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PrecontractCostPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Pre-Contract Costs",
        "label": "Precontract Cost Policy [Text Block]",
        "documentation": "Precontract cost."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PreferredStockNoParValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockNoParValue",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Preferred stock, no par value",
        "label": "Preferred Stock, No Par Value",
        "documentation": "Face amount per share of no-par value preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r816"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Preferred stock, shares authorized (in shares)",
        "label": "Preferred Stock, Shares Authorized",
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r645"
     ]
    },
    "us-gaap_PreferredStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockSharesIssued",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Preferred Stock, Shares Issued, Total",
        "terseLabel": "Preferred stock, shares issued (in shares)",
        "label": "Preferred Stock, Shares Issued",
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r393"
     ]
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockSharesOutstanding",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Preferred Stock, Shares Outstanding, Ending Balance",
        "periodStartLabel": "Preferred Stock, Shares Outstanding, Beginning Balance",
        "terseLabel": "Preferred stock, shares outstanding (in shares)",
        "label": "Preferred Stock, Shares Outstanding",
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r645",
      "r663",
      "r861",
      "r862"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Preferred Stock, Value, Issued, Ending Balance",
        "periodStartLabel": "Preferred Stock, Value, Issued, Beginning Balance",
        "totalLabel": "Preferred Stock, Value, Issued, Total",
        "terseLabel": "Preferred stock, no par value, 5,000 shares authorized, no shares issued and outstanding",
        "label": "Preferred Stock, Value, Issued",
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r582",
      "r746"
     ]
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PrepaidExpenseCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Prepaid Expense, Current, Total",
        "terseLabel": "Prepaid expenses and other assets",
        "label": "Prepaid Expense, Current",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r209",
      "r317",
      "r318",
      "r716"
     ]
    },
    "us-gaap_ProceedsFromDivestitureOfBusinesses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromDivestitureOfBusinesses",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Transaction price on closing date",
        "label": "Proceeds from Divestiture of Businesses",
        "documentation": "The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period."
       }
      }
     },
     "auth_ref": [
      "r30"
     ]
    },
    "us-gaap_ProceedsFromDivestitureOfBusinessesNetOfCashDivested": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromDivestitureOfBusinessesNetOfCashDivested",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from Shipyard Transaction",
        "totalLabel": "Proceeds from Divestiture of Businesses, Net of Cash Divested, Total",
        "label": "Proceeds from Divestiture of Businesses, Net of Cash Divested",
        "documentation": "This element represents the cash inflow during the period from the sale of a component of the entity."
       }
      }
     },
     "auth_ref": [
      "r30"
     ]
    },
    "us-gaap_ProceedsFromInsuranceSettlementOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromInsuranceSettlementOperatingActivities",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Insurance Settlement, Operating Activities",
        "terseLabel": "Insurance payments received",
        "documentation": "Amount of cash inflow for proceeds from settlement of insurance claim, classified as operating activities. Excludes insurance settlement classified as investing activities."
       }
      }
     },
     "auth_ref": [
      "r221",
      "r710"
     ]
    },
    "us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maturities of short-term investments",
        "label": "Proceeds from Maturities, Prepayments and Calls of Short-Term Investments",
        "documentation": "The cash inflow from maturities, prepayments, calls and collections of all investments, including securities and other assets, having ready marketability and intended by management to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r125"
     ]
    },
    "gifi_ProceedsFromPropertyInsurancePolicy": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ProceedsFromPropertyInsurancePolicy",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recoveries from insurance claims",
        "label": "Proceeds From Property Insurance Policy",
        "documentation": "Proceeds from property insurance policy."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from the sale of assets held for sale net of transaction and other costs",
        "label": "Proceeds From Sale Of Assets Held For Sale Net Of Transaction And Other Costs",
        "documentation": "Proceeds from the sale of assets held for sale net of transaction and other costs."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from the sale of assets net of transaction and other costs",
        "label": "Proceeds from Sale of Assets Net of Transaction and Other Costs",
        "documentation": "Proceeds from sale of assets net of transaction and other costs."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromSaleOfMachineryAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleOfMachineryAndEquipment",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale of property and equipment",
        "label": "Proceeds from Sale of Machinery and Equipment",
        "documentation": "The cash inflow from sale of machinery and equipment."
       }
      }
     },
     "auth_ref": [
      "r124"
     ]
    },
    "gifi_ProceedsFromSaleOfRealEstateRequiredToMakeProvision": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ProceedsFromSaleOfRealEstateRequiredToMakeProvision",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale of real estate required to make provision",
        "label": "Proceeds From Sale of Real Estate Required to Make Provision",
        "documentation": "Proceeds from sale of real estate required to make provision."
       }
      }
     },
     "auth_ref": []
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Product and Service",
        "label": "Product and Service [Axis]"
       }
      }
     },
     "auth_ref": [
      "r289",
      "r571",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r712",
      "r733",
      "r747",
      "r777",
      "r809",
      "r810",
      "r818",
      "r857"
     ]
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Product and Service",
        "label": "Product and Service [Domain]"
       }
      }
     },
     "auth_ref": [
      "r289",
      "r571",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r712",
      "r733",
      "r747",
      "r777",
      "r809",
      "r810",
      "r818",
      "r857"
     ]
    },
    "gifi_ProjectsPercentComplete": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ProjectsPercentComplete",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Projects, percent complete (percentage)",
        "label": "Projects Percent Complete",
        "documentation": "Projects, Percent Complete"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_PromissoryNoteMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PromissoryNoteMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Promissory Note",
        "label": "Promissory note [Member]",
        "documentation": "Promissory note."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-Lived Tangible Asset",
        "label": "Long-Lived Tangible Asset [Axis]",
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipment3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections."
       }
      }
     },
     "auth_ref": [
      "r136",
      "r175",
      "r179",
      "r180"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Property, Plant and Equipment, Gross, Ending Balance",
        "periodStartLabel": "Property, Plant and Equipment, Gross, Beginning Balance",
        "totalLabel": "Property, Plant and Equipment, Gross, Total",
        "terseLabel": "Property, plant and equipment, gross",
        "label": "Property, Plant and Equipment, Gross",
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r140",
      "r197",
      "r587"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, Plant and Equipment [Line Items]",
        "label": "Property, Plant and Equipment [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Property, Plant and Equipment, Net, Ending Balance",
        "periodStartLabel": "Property, Plant and Equipment, Net, Beginning Balance",
        "totalLabel": "Property, plant and equipment, net",
        "terseLabel": "Property, plant and equipment, net",
        "label": "Property, Plant and Equipment, Net",
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r580",
      "r587",
      "r746"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Property, Plant and Equipment",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-Lived Tangible Asset",
        "label": "Long-Lived Tangible Asset [Domain]",
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software."
       }
      }
     },
     "auth_ref": [
      "r140"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Property, plant and equipment, estimated useful life",
        "terseLabel": "Property, plant and equipment, useful life",
        "label": "Property, Plant and Equipment, Useful Life",
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_PropertyPlantandEquipmentReclassificationtoHeldforsale": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "PropertyPlantandEquipmentReclassificationtoHeldforsale",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Property, plant and equipment, reclassification to held-for-sale.",
        "label": "Property Plantand Equipment Reclassificationto Heldforsale",
        "terseLabel": "Reclassification of property, plant and equipment to assets held for sale"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProvisionForDoubtfulAccounts",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Change in allowance for doubtful accounts and credit losses",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r218",
      "r312"
     ]
    },
    "us-gaap_QuarterlyFinancialInformationDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "QuarterlyFinancialInformationDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Quarterly Financial Information Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_QuarterlyFinancialInformationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "QuarterlyFinancialInformationTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureQUARTERLYFINANCIALINFORMATIONUNAUDITED"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "QUARTERLY FINANCIAL INFORMATION (UNAUDITED)",
        "label": "Quarterly Financial Information [Text Block]",
        "documentation": "The entire disclosure for quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information."
       }
      }
     },
     "auth_ref": [
      "r131",
      "r258"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statistical Measurement",
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r347",
      "r348",
      "r349",
      "r350",
      "r419",
      "r420",
      "r449",
      "r450",
      "r451",
      "r567",
      "r568",
      "r610",
      "r636",
      "r637",
      "r686",
      "r688",
      "r690",
      "r691",
      "r693",
      "r708",
      "r709",
      "r724",
      "r731",
      "r742",
      "r748",
      "r751",
      "r805",
      "r814",
      "r845",
      "r846",
      "r847",
      "r848",
      "r849"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statistical Measurement",
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "auth_ref": [
      "r347",
      "r348",
      "r349",
      "r350",
      "r419",
      "r420",
      "r449",
      "r450",
      "r451",
      "r567",
      "r568",
      "r610",
      "r636",
      "r637",
      "r686",
      "r688",
      "r690",
      "r691",
      "r693",
      "r708",
      "r709",
      "r724",
      "r731",
      "r742",
      "r748",
      "r751",
      "r805",
      "r814",
      "r845",
      "r846",
      "r847",
      "r848",
      "r849"
     ]
    },
    "us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Allowance for Doubtful Accounts and Credit Losses",
        "label": "Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for determining the allowance for doubtful accounts for trade and other accounts receivable balances, and when impairments, charge-offs or recoveries are recognized."
       }
      }
     },
     "auth_ref": [
      "r48"
     ]
    },
    "gifi_RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recognized income associated with revisions to allowance for doubtful accounts",
        "label": "Recognized Income Associated With Revisions to Allowance for Doubtful Accounts",
        "documentation": "Recognized income associated with revisions to allowance for doubtful accounts."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RelatedPartyTransactionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related Party Transaction",
        "label": "Related Party Transaction [Axis]",
        "documentation": "Information by type of related party transaction."
       }
      }
     },
     "auth_ref": [
      "r562",
      "r563",
      "r841"
     ]
    },
    "us-gaap_RelatedPartyTransactionDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related Party Transaction",
        "label": "Related Party Transaction [Domain]",
        "documentation": "Transaction between related party."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_RemainingFortyVehicleFerryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RemainingFortyVehicleFerryMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remaining forty-vehicle ferry.",
        "label": "Remaining Forty Vehicle Ferry [Member]",
        "terseLabel": "Remaining Forty-Vehicle Ferry"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_RemainingTransactionPriceReceivableFromDiscontinuedOperation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RemainingTransactionPriceReceivableFromDiscontinuedOperation",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remaining transaction price receivable from discontinued operation.",
        "label": "Remaining Transaction Price Receivable From Discontinued Operation",
        "terseLabel": "Remaining Transaction Price receivable from Shipyard Transaction"
       }
      }
     },
     "auth_ref": []
    },
    "srt_RestatementAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RestatementAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revision of Prior Period",
        "label": "Revision of Prior Period [Axis]"
       }
      }
     },
     "auth_ref": [
      "r188",
      "r230",
      "r231",
      "r232",
      "r234",
      "r235",
      "r238",
      "r239",
      "r240",
      "r241",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r257",
      "r304",
      "r305",
      "r483",
      "r520",
      "r524",
      "r525",
      "r526",
      "r548",
      "r560",
      "r561",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r624"
     ]
    },
    "srt_RestatementDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RestatementDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revision of Prior Period",
        "label": "Revision of Prior Period [Domain]"
       }
      }
     },
     "auth_ref": [
      "r188",
      "r230",
      "r231",
      "r232",
      "r234",
      "r235",
      "r238",
      "r239",
      "r240",
      "r241",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r257",
      "r304",
      "r305",
      "r483",
      "r520",
      "r524",
      "r525",
      "r526",
      "r548",
      "r560",
      "r561",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r624"
     ]
    },
    "us-gaap_RestrictedCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedCash",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Restricted Cash, Total",
        "terseLabel": "Restricted cash",
        "label": "Restricted Cash",
        "documentation": "Amount of cash restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits."
       }
      }
     },
     "auth_ref": [
      "r780",
      "r785",
      "r851",
      "r854"
     ]
    },
    "us-gaap_RestrictedCashCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedCashCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted cash",
        "label": "Restricted Cash, Current",
        "documentation": "Amount of cash restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits."
       }
      }
     },
     "auth_ref": [
      "r780",
      "r785"
     ]
    },
    "us-gaap_RestrictedCashNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedCashNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted cash, noncurrent",
        "label": "Restricted Cash, Noncurrent",
        "documentation": "Amount of cash restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits."
       }
      }
     },
     "auth_ref": [
      "r170",
      "r781",
      "r785"
     ]
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedStockUnitsRSUMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "RSUs",
        "label": "Restricted Stock Units (RSUs) [Member]",
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Increase to beginning accumulated deficit",
        "periodEndLabel": "Retained Earnings (Accumulated Deficit), Ending Balance",
        "periodStartLabel": "Retained Earnings (Accumulated Deficit), Beginning Balance",
        "totalLabel": "Retained Earnings (Accumulated Deficit), Total",
        "label": "Retained Earnings (Accumulated Deficit)",
        "terseLabel": "Accumulated deficit",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r111",
      "r148",
      "r584",
      "r617",
      "r622",
      "r629",
      "r646",
      "r746"
     ]
    },
    "gifi_RetainedEarningsIncreaseDecreaseInAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RetainedEarningsIncreaseDecreaseInAccumulatedDeficit",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase to beginning accumulated deficit",
        "label": "Retained Earnings Increase Decrease in Accumulated Deficit",
        "documentation": "Retained earnings increase decrease in accumulated deficit"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated Deficit",
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r187",
      "r230",
      "r231",
      "r232",
      "r235",
      "r245",
      "r247",
      "r303",
      "r309",
      "r456",
      "r457",
      "r458",
      "r482",
      "r483",
      "r508",
      "r511",
      "r512",
      "r515",
      "r524",
      "r613",
      "r615",
      "r631",
      "r861"
     ]
    },
    "gifi_RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RetainedShipyardContractsAndOtherShipyardDivisionLiabilitiesMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Retained Shipyard Contracts And Other Shipyard Division Liabilities",
        "label": "Retained Shipyard Contracts And Other Shipyard Division Liabilities [Member]",
        "documentation": "Retained shipyard contracts and other shipyard division liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_RetirementPlanAndStockIncentivePlansDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RetirementPlanAndStockIncentivePlansDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRETIREMENTANDLONGTERMINCENTIVEPLANS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "RETIREMENT AND LONG-TERM INCENTIVE PLANS",
        "label": "Retirement Plan And Stock Incentive Plans Disclosure [Text Block]",
        "documentation": "Retirement Plan And Stock Incentive Plans Disclosure [Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFOPERATIONS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Revenue (eliminations)",
        "totalLabel": "Revenue from Contract with Customer, Excluding Assessed Tax, Total",
        "terseLabel": "Revenue",
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise."
       }
      }
     },
     "auth_ref": [
      "r265",
      "r266",
      "r277",
      "r282",
      "r283",
      "r289",
      "r291",
      "r293",
      "r414",
      "r415",
      "r571"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue Recognition",
        "label": "Revenue from Contract with Customer [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for revenue from contract with customer."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r711"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureREVENUECONTRACTASSETSANDLIABILITIESANDOTHERCONTRACTMATTERS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS",
        "label": "Revenue from Contract with Customer [Text Block]",
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r418"
     ]
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueRemainingPerformanceObligation",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Remaining performance obligation",
        "label": "Revenue, Remaining Performance Obligation, Amount",
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue."
       }
      }
     },
     "auth_ref": [
      "r178"
     ]
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue Remaining Performance Obligation Expected Timing Of Satisfaction [Table]",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]",
        "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Remaining Performance Obligations for Each of Operating Segments, Disaggregated by Contract Type",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]",
        "documentation": "Tabular disclosure of expected timing for satisfying remaining performance obligation."
       }
      }
     },
     "auth_ref": [
      "r771"
     ]
    },
    "gifi_RevenueVariableConsiderationContractPriceReduction": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RevenueVariableConsiderationContractPriceReduction",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reduction of estimated contract price for liquidated damages, amount",
        "label": "Revenue Variable Consideration Contract Price Reduction",
        "documentation": "Revenue variable consideration contract price reduction."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RevisionOfPreviouslyIssuedFinancialStatementsPolicyTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revision of Previously Issued Financial Statements",
        "label": "Revision Of Previously Issued Financial Statements Policy [Text Block]",
        "documentation": "Revision of previously issued financial statements."
       }
      }
     },
     "auth_ref": []
    },
    "srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RevisionOfPriorPeriodErrorCorrectionAdjustmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Corrections",
        "label": "Revision of Prior Period, Error Correction, Adjustment [Member]"
       }
      }
     },
     "auth_ref": [
      "r238",
      "r239",
      "r240",
      "r244",
      "r245",
      "r246",
      "r247"
     ]
    },
    "gifi_RightOfUseAssetMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "RightOfUseAssetMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Right-of-use asset",
        "label": "Right Of Use Asset [Member]",
        "documentation": "Right of use asset."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SalesRevenueNetMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SalesRevenueNetMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSchedulesOfConcentrationOfRiskByRiskFactorParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sales Revenue, Net",
        "label": "Revenue Benchmark [Member]",
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation."
       }
      }
     },
     "auth_ref": [
      "r293",
      "r772"
     ]
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureAcquisitionTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Preliminary Purchase Price Allocation",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table Text Block]",
        "documentation": "Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r73"
     ]
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Components of Income Tax Expense",
        "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]",
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years."
       }
      }
     },
     "auth_ref": [
      "r151"
     ]
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Components of Deferred Tax Assets and Liabilities",
        "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]",
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r150"
     ]
    },
    "us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureSHIPYARDTRANSACTIONANDDISCONTINUEDOPERATIONSTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Disposal Groups Including Discontinued Operations",
        "label": "Disposal Groups, Including Discontinued Operations [Table Text Block]",
        "documentation": "Tabular disclosure of information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r14",
      "r17",
      "r87",
      "r93",
      "r94",
      "r95",
      "r96",
      "r97",
      "r102",
      "r104",
      "r105",
      "r142"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Computation of Basic and Diluted Income (Loss) Per Share",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r793"
     ]
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reconciliation of Income Tax",
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]",
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r149"
     ]
    },
    "us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Revision of Previously Issued Financial Statements",
        "label": "Schedule of Error Corrections and Prior Period Adjustments [Table Text Block]",
        "documentation": "Tabular disclosure of prior period adjustments to previously issued financial statements including (1) the effect of the correction on each financial statement line item and any per-share amounts affected for each prior period presented (2) the cumulative effect of the change on retained earnings or other appropriate components of equity or net assets in the statement of financial position, as of the beginning of the earliest period presented, and (3) the effect of the prior period adjustments (both gross and net of applicable income tax) on the net income of each prior period presented in the entity's annual report for the year in which the adjustments are made."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35",
      "r36"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentScheduleOfOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r51",
      "r53",
      "r572"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Other Intangible Assets",
        "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]",
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment."
       }
      }
     },
     "auth_ref": [
      "r51",
      "r53"
     ]
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Future Annual Principal Maturities Under Note Agreement",
        "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]",
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule Of Property Plant And Equipment [Table]",
        "label": "Property, Plant and Equipment [Table]",
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfQuarterlyFinancialInformationTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureQuarterlyFinancialInformationUnauditedTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Adjustments to Previously Issued Quarterly Financial Statements",
        "label": "Quarterly Financial Information [Table Text Block]",
        "documentation": "Tabular disclosure of quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data."
       }
      }
     },
     "auth_ref": [
      "r172"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule Of Segment Reporting Information By Segment [Table]",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r46",
      "r47",
      "r49"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summarized Segment Financial Information",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r46",
      "r47",
      "r49"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule Of Share Based Compensation Arrangements By Share Based Payment Award [Table]",
        "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]",
        "documentation": "Disclosure of information about share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452"
     ]
    },
    "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of RSU Activity Excluding Cash Settled RSUs",
        "label": "Share-Based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]",
        "documentation": "Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SecondFortyVehicleFerryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SecondFortyVehicleFerryMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Second forty vehicle ferry.",
        "label": "Second Forty Vehicle Ferry [Member]",
        "terseLabel": "Second Forty-Vehicle Ferry"
       }
      }
     },
     "auth_ref": []
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r760"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r763"
     ]
    },
    "us-gaap_SegmentContinuingOperationsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentContinuingOperationsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Continuing Operations",
        "label": "Continuing Operations [Member]",
        "documentation": "Component of an entity expected to operate in the foreseeable future."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segments",
        "label": "Segments [Domain]",
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r261",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r287",
      "r293",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r342",
      "r343",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r725",
      "r777",
      "r857"
     ]
    },
    "us-gaap_SegmentExpenditureAdditionToLongLivedAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentExpenditureAdditionToLongLivedAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Capital expenditures",
        "label": "Segment, Expenditure, Addition to Long-Lived Assets",
        "documentation": "Amount of expenditure for addition to long-lived assets included in determination of segment assets by chief operating decision maker (CODM) or otherwise regularly provided to CODM. Excludes expenditure for addition to financial instrument, long-term customer relationship of financial institution, mortgage and other servicing rights, deferred policy acquisition cost, and deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r275",
      "r723"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Geographical",
        "label": "Geographical [Domain]"
       }
      }
     },
     "auth_ref": [
      "r291",
      "r292",
      "r633",
      "r634",
      "r635",
      "r687",
      "r689",
      "r692",
      "r694",
      "r699",
      "r700",
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r713",
      "r734",
      "r751",
      "r818",
      "r857"
     ]
    },
    "us-gaap_SegmentOperatingActivitiesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentOperatingActivitiesDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Activities",
        "label": "Operating Activities [Domain]",
        "documentation": "Operations of an entity including continuing and discontinued operations."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOPERATINGSEGMENTS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "OPERATING SEGMENTS",
        "label": "Segment Reporting Disclosure [Text Block]",
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments."
       }
      }
     },
     "auth_ref": [
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r276",
      "r281",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r293"
     ]
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingInformationLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segment Reporting Information [Line Items]",
        "label": "Segment Reporting Information [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ServicesSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ServicesSegmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Services",
        "label": "Services Segment [Member]",
        "documentation": "Services segment."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SeventyVehicleFerryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SeventyVehicleFerryMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Seventy-Vehicle Ferry",
        "label": "Seventy Vehicle Ferry [Member]",
        "documentation": "Seventy vehicle ferry."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Share-based Payment Arrangement, Noncash Expense, Total",
        "verboseLabel": "Share-based compensation cost charged against income",
        "terseLabel": "Stock-based compensation expense",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "RSU awards vesting period",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period",
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition."
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Forfeited (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r441"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forfeited (USD per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event."
       }
      }
     },
     "auth_ref": [
      "r441"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Granted (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r439"
     ]
    },
    "gifi_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodFairValue",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total fair value of shares granted",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Grants In Period Fair Value",
        "documentation": "Share based compensation arrangement by share based payment award equity instruments other than options grants in period fair value."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average grant date fair value",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r439"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "RSUs shares at the beginning of period (in shares)",
        "periodEndLabel": "RSUs shares at the end of period (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r436",
      "r437"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of Shares",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "RSUs shares at the beginning of period (USD per share)",
        "periodEndLabel": "RSUs shares at the end of period (USD per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r436",
      "r437"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted- Average Grant-Date Fair Value Per Share",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Vested (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r440"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total fair value of shares vested",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value",
        "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash."
       }
      }
     },
     "auth_ref": [
      "r443"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vested (USD per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement."
       }
      }
     },
     "auth_ref": [
      "r440"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum number of shares available for grant for each employee (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Maximum Number of Shares Per Employee",
        "documentation": "The highest quantity of shares an employee can purchase under the plan per period."
       }
      }
     },
     "auth_ref": [
      "r65"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Available shares for future issuance (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant",
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable."
       }
      }
     },
     "auth_ref": [
      "r65"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock option awards granted",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross",
        "verboseLabel": "Cash based performance award granted",
        "documentation": "Gross number of share options (or share units) granted during the period."
       }
      }
     },
     "auth_ref": [
      "r432"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Ending Balance",
        "periodStartLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Beginning Balance",
        "terseLabel": "Outstanding stock option awards",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number",
        "documentation": "Number of options outstanding, including both vested and non-vested options."
       }
      }
     },
     "auth_ref": [
      "r428",
      "r429"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansSummaryOfRSUActivityExcludingCashSettledRsusDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Type",
        "label": "All Award Types",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r424",
      "r425",
      "r426",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452"
     ]
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-Based Compensation",
        "label": "Share-Based Payment Arrangement [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost."
       }
      }
     },
     "auth_ref": [
      "r421",
      "r427",
      "r446",
      "r447",
      "r448",
      "r449",
      "r452",
      "r459",
      "r460",
      "r461",
      "r462"
     ]
    },
    "gifi_ShareBasedPaymentsAndRetirementDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ShareBasedPaymentsAndRetirementDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Based Payments And Retirement Disclosure [Abstract]",
        "documentation": "Share-based Payments and Retirement Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareRepurchaseProgramAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareRepurchaseProgramAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Axis]",
        "documentation": "Information by share repurchase program."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareRepurchaseProgramDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareRepurchaseProgramDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Domain]",
        "documentation": "Name of the share repurchase program."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ShareRepurchaseProgramMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ShareRepurchaseProgramMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share Repurchase Program",
        "label": "Share Repurchase Program [Member]",
        "documentation": "Share Repurchase Program."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ShipyardAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ShipyardAssetsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Prospect Shipyard",
        "label": "Shipyard Assets [Member]",
        "documentation": "Shipyard Assets [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ShipyardSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ShipyardSegmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Shipyard Division",
        "terseLabel": "Shipyard",
        "label": "Shipyard Segment [Member]",
        "documentation": "Shipyard segment."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_ShipyardTransactionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ShipyardTransactionsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shipyard Transactions [Member]",
        "documentation": "Shipyard transactions.",
        "verboseLabel": "Shipyard Transactions",
        "terseLabel": "Shipyard Transactions"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShortTermContractWithCustomerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShortTermContractWithCustomerMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Short-Term Contract with Customer [Member]",
        "terseLabel": "Short-Term Contract with Customer",
        "documentation": "Contract with customer in which duration is classified as short-term."
       }
      }
     },
     "auth_ref": [
      "r737"
     ]
    },
    "gifi_ShortTermDebtRemainingPrincipalBalance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ShortTermDebtRemainingPrincipalBalance",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Remaining principal balance",
        "label": "Short Term Debt Remaining Principal Balance",
        "documentation": "Short term debt remaining principal balance."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShortTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShortTermInvestments",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Short-term Investments, Total",
        "terseLabel": "Short-term investments",
        "label": "Short-Term Investments",
        "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current."
       }
      }
     },
     "auth_ref": [
      "r163",
      "r164",
      "r782"
     ]
    },
    "gifi_ShortTermPremiumFinanceArrangementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "ShortTermPremiumFinanceArrangementMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Short-term Premium Finance Arrangement",
        "label": "Short Term Premium Finance Arrangement [Member]",
        "documentation": "Short-term premium finance arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SignificantAccountingPoliciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SignificantAccountingPoliciesLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Significant Accounting Policies [Line Items]",
        "label": "Significant Accounting Policies [Line Items]",
        "documentation": "Significant Accounting Policies [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SignificantAccountingPoliciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SignificantAccountingPoliciesTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Significant Accounting Policies [Table]",
        "label": "Significant Accounting Policies [Table]",
        "documentation": "Significant Accounting Policies [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StateAndLocalJurisdictionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StateAndLocalJurisdictionMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "State and Local Jurisdiction",
        "label": "State and Local Jurisdiction [Member]",
        "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementBusinessSegmentsAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfContractWithCustomerAssetAndLiabilityParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segments",
        "label": "Segments [Axis]",
        "documentation": "Information by business segments."
       }
      }
     },
     "auth_ref": [
      "r190",
      "r261",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r287",
      "r293",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r339",
      "r342",
      "r343",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r725",
      "r777",
      "r857"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Components",
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r28",
      "r187",
      "r214",
      "r215",
      "r216",
      "r230",
      "r231",
      "r232",
      "r235",
      "r245",
      "r247",
      "r259",
      "r303",
      "r309",
      "r394",
      "r456",
      "r457",
      "r458",
      "r482",
      "r483",
      "r508",
      "r510",
      "r511",
      "r512",
      "r513",
      "r515",
      "r524",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r561",
      "r613",
      "r614",
      "r615",
      "r631",
      "r683"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Geographical",
        "label": "Geographical [Axis]"
       }
      }
     },
     "auth_ref": [
      "r291",
      "r292",
      "r633",
      "r634",
      "r635",
      "r687",
      "r689",
      "r692",
      "r694",
      "r696",
      "r699",
      "r700",
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r713",
      "r734",
      "r751",
      "r818",
      "r857"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement [Line Items]",
        "label": "Statement [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r230",
      "r231",
      "r232",
      "r259",
      "r571",
      "r625",
      "r632",
      "r638",
      "r639",
      "r640",
      "r641",
      "r642",
      "r643",
      "r645",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r664",
      "r666",
      "r667",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r675",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r683",
      "r752"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOperatingActivitiesSegmentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOperatingActivitiesSegmentAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsSummarizedSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Activities",
        "label": "Operating Activities [Axis]",
        "documentation": "Information by continuing and discontinuing operations."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement [Table]",
        "label": "Statement [Table]",
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed."
       }
      }
     },
     "auth_ref": [
      "r230",
      "r231",
      "r232",
      "r259",
      "r571",
      "r625",
      "r632",
      "r638",
      "r639",
      "r640",
      "r641",
      "r642",
      "r643",
      "r645",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r664",
      "r666",
      "r667",
      "r669",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r675",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r683",
      "r752"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Value of awards granted",
        "label": "Stock Issued During Period, Value, Restricted Stock Award, Gross",
        "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r108",
      "r109",
      "r148"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture, Total",
        "terseLabel": "Stock-based compensation expense",
        "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture",
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r66",
      "r108",
      "r109",
      "r148"
     ]
    },
    "us-gaap_StockRepurchaseProgramAuthorizedAmount1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amount of shares authorized to be repurchased",
        "label": "Stock Repurchase Program, Authorized Amount",
        "documentation": "Amount of stock repurchase plan authorized."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockRepurchaseProgramExpirationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockRepurchaseProgramExpirationDate",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock repurchase program, expiration date",
        "label": "Stock Repurchase Program Expiration Date",
        "documentation": "Expiration date for the purchase of an entity's own shares under a stock repurchase plan, in the YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockRepurchasedDuringPeriodShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockRepurchasedDuringPeriodShares",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repurchases of common stock (in shares)",
        "terseLabel": "Repurchases of common stock (in shares)",
        "label": "Stock Repurchased During Period, Shares",
        "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r108",
      "r109",
      "r148",
      "r628",
      "r683",
      "r695"
     ]
    },
    "us-gaap_StockRepurchasedDuringPeriodValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockRepurchasedDuringPeriodValue",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repurchases of common stock",
        "terseLabel": "Repurchases of common stock",
        "label": "Stock Repurchased During Period, Value",
        "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r108",
      "r109",
      "r148",
      "r631",
      "r683",
      "r695",
      "r758"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCHANGESINSHAREHOLDERSEQUITY"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total shareholders\u2019 equity",
        "terseLabel": "Total shareholders' equity",
        "periodStartLabel": "Beginning Balance",
        "periodEndLabel": "Ending Balance",
        "label": "Equity, Attributable to Parent",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r109",
      "r112",
      "r113",
      "r133",
      "r647",
      "r663",
      "r684",
      "r685",
      "r746",
      "r759",
      "r787",
      "r798",
      "r836",
      "r861"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDBALANCESHEETS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Shareholders\u2019 equity:",
        "label": "Equity, Attributable to Parent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubleaseIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubleaseIncome",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sublease Income",
        "terseLabel": "Sublease income",
        "documentation": "Amount of sublease income excluding finance and operating lease expense."
       }
      }
     },
     "auth_ref": [
      "r554",
      "r745"
     ]
    },
    "us-gaap_SubsequentEventLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventLineItems",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event [Line Items]",
        "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event."
       }
      }
     },
     "auth_ref": [
      "r541",
      "r565"
     ]
    },
    "us-gaap_SubsequentEventMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Subsequent Event",
        "label": "Subsequent Event [Member]",
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r541",
      "r565"
     ]
    },
    "us-gaap_SubsequentEventTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventTable",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Event [Table]",
        "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued."
       }
      }
     },
     "auth_ref": [
      "r541",
      "r565"
     ]
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventTypeAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Subsequent Event Type",
        "label": "Subsequent Event Type [Axis]",
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r541",
      "r565"
     ]
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventTypeDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Subsequent Event Type",
        "label": "Subsequent Event Type [Domain]",
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r541",
      "r565"
     ]
    },
    "us-gaap_SubsequentEventsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventsTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureSubsequentEvents1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "SUBSEQUENT EVENTS",
        "label": "Subsequent Events [Text Block]",
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business."
       }
      }
     },
     "auth_ref": [
      "r564",
      "r566"
     ]
    },
    "gifi_SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SummaryOfReclassificationOfPreviouslyReportedSegmentsTableTextBlock",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOperatingSegmentsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Reclassification of Previously Reported Segments",
        "label": "Summary Of Reclassification Of Previously Reported Segments Table [Text Block]",
        "documentation": "Tabular disclosure of reclassification of previously reported segment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Supplemental cash flow information:",
        "label": "Supplemental Cash Flow Information [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SuretyBondMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SuretyBondMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surety Bond",
        "label": "Surety Bond [Member]",
        "documentation": "An obligation arising from a three-party agreement that legally binds together a principal who needs the bond, an obligee who requires the bond and a surety company that sells the bond."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SuretyBonds": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SuretyBonds",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surety bonds",
        "label": "Surety Bonds",
        "documentation": "Surety Bonds"
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SuretyBondsRelatesToActiveRetainedShipyardContracts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SuretyBondsRelatesToActiveRetainedShipyardContracts",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surety bonds relates to Active Retained Shipyard Contracts",
        "label": "Surety Bonds Relates To Active Retained Shipyard Contracts",
        "documentation": "Surety bonds relates to active retained shipyard contracts."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SuretyBondsSubjectToDispute": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SuretyBondsSubjectToDispute",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surety bonds subject to dispute",
        "label": "Surety Bonds Subject To Dispute",
        "documentation": "Surety bonds subject to dispute."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SuretyContractsOfInsuranceCoverages": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SuretyContractsOfInsuranceCoverages",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surety bonds subject to dispute",
        "label": "Surety Contracts Of Insurance Coverages",
        "documentation": "Surety contracts of insurance coverages."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SuretyContractsOfInsuranceCoveragesTerminated": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SuretyContractsOfInsuranceCoveragesTerminated",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surety contracts of insurance coverages terminated",
        "label": "Surety Contracts of Insurance Coverages Terminated",
        "documentation": "Surety contracts of insurance coverages terminated."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_SuretyContractsOfInsuranceCoveragesTerminationDate": {
     "xbrltype": "gYearMonthItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "SuretyContractsOfInsuranceCoveragesTerminationDate",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surety contracts of insurance coverages termination date",
        "label": "Surety Contracts of Insurance Coverages Termination Date",
        "documentation": "Surety contracts of insurance coverages termination date."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_TargetAmountPayableWithPerformancePeriod": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "TargetAmountPayableWithPerformancePeriod",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Target amounts payable associated with performance period",
        "label": "Target Amount Payable With Performance Period",
        "documentation": "Target amount payable with performance period."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_TimeAndMaterialsAndCostReimbursableMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "TimeAndMaterialsAndCostReimbursableMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfRemainingPerformanceObligationsForEachOfOperatingSegmentsDisa",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersSummaryOfDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Time And Materials And Cost Reimbursable",
        "label": "Time And Materials And Cost Reimbursable [Member]",
        "documentation": "Time and materials and cost reimbursable."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_TimeBasedRSUAwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "TimeBasedRSUAwardsMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRetirementAndLongTermIncentivePlansAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Time-based RSU Awards",
        "label": "Time Based R S U Awards [Member]",
        "documentation": "Time-based RSU awards."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_TowingSalvageAndRescueShipMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "TowingSalvageAndRescueShipMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Towing Salvage and Rescue Ship",
        "label": "Towing Salvage And Rescue Ship [Member]",
        "documentation": "Towing, salvage and rescue ship."
       }
      }
     },
     "auth_ref": []
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trading Symbol",
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "gifi_TransactionAndOtherCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.gulfisland.com/20231231",
     "localname": "TransactionAndOtherCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Transaction and other costs",
        "label": "Transaction And Other Costs",
        "documentation": "Transaction and other costs."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TransactionDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TransactionDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Transaction",
        "label": "Transaction [Domain]",
        "documentation": "Agreement between buyer and seller for the exchange of financial instruments."
       }
      }
     },
     "auth_ref": [
      "r717"
     ]
    },
    "us-gaap_TransactionTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TransactionTypeAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureShipyardTransactionAndDiscontinuedOperationsSummaryOfOperatingResultsFromDiscontinuedOperationsParentheticalDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureShipyardTransactionAndDiscontinuedOperationsAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_StatementCONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Transaction Type",
        "label": "Transaction Type [Axis]",
        "documentation": "Information by type of agreement between buyer and seller for the exchange of financial instruments."
       }
      }
     },
     "auth_ref": [
      "r717"
     ]
    },
    "us-gaap_TransportationEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TransportationEquipmentMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureLonglivedAssetsAndLeasedFacilitiesAndEquipmentSummaryOfPropertyPlantAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Transportation equipment",
        "label": "Transportation Equipment [Member]",
        "documentation": "Equipment used for the primary purpose of moving people and products from one place to another."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TypeOfAdoptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TypeOfAdoptionMember",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Domain]",
        "documentation": "Amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r234",
      "r235",
      "r236",
      "r237",
      "r248",
      "r295",
      "r296",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r340",
      "r456",
      "r457",
      "r458",
      "r480",
      "r481",
      "r482",
      "r483",
      "r496",
      "r497",
      "r498",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r531",
      "r532",
      "r533",
      "r534",
      "r542",
      "r543",
      "r545",
      "r546",
      "r547",
      "r548",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r573",
      "r574",
      "r575",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622"
     ]
    },
    "us-gaap_TypeOfArrangementAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TypeOfArrangementAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtScheduleOfFutureAnnualPrincipalMaturitiesUnderNoteAgreementParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]",
        "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations."
       }
      }
     },
     "auth_ref": [
      "r500"
     ]
    },
    "us-gaap_UnsecuredDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnsecuredDebt",
     "crdr": "credit",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureCreditFacilitiesAndDebtAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Unsecured Debt, Total",
        "terseLabel": "Unsecured loan amount",
        "label": "Unsecured Debt",
        "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of uncollateralized debt obligations (with maturities initially due after one year or beyond the operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r161",
      "r853"
     ]
    },
    "us-gaap_UnusualRiskOrUncertaintyByNatureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnusualRiskOrUncertaintyByNatureAxis",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unusual Risk or Uncertainty, Nature",
        "label": "Unusual Risk or Uncertainty, Nature [Axis]",
        "documentation": "Information by nature of risk and uncertainty, for example, but not limited to, threat of expropriation of its assets by a foreign government, rapid technological obsolescence in the industry, risk of natural disaster from earthquake or weather events, and availability of or continuation of a labor force at a reasonable cost."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UnusualRiskOrUncertaintyNatureDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnusualRiskOrUncertaintyNatureDomain",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureOrganizationAndSummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureRevenueContractAssetsAndLiabilitiesAndOtherContractMattersAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unusual Risk or Uncertainty, Nature",
        "label": "Unusual Risk or Uncertainty, Nature [Domain]",
        "documentation": "Describes the nature of the unusual risk or uncertainty, such as the threat of expropriation of its assets by a foreign government, rapid technological obsolescence in the industry, risk of natural disaster from earthquake or weather events, and availability of or continuation of a labor force at a reasonable cost."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UseOfEstimates": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UseOfEstimates",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureORGANIZATIONANDSUMMARYOFSIGNIFICANTACCOUNTINGPOLICIESPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Use of Estimates",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles."
       }
      }
     },
     "auth_ref": [
      "r42",
      "r43",
      "r44",
      "r173",
      "r174",
      "r176",
      "r177"
     ]
    },
    "us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ValuationAllowanceDeferredTaxAssetChangeInAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/Role_DisclosureIncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Valuation allowance",
        "label": "Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount",
        "documentation": "Amount of increase (decrease) in the valuation allowance for a specified deferred tax asset."
       }
      }
     },
     "auth_ref": [
      "r472"
     ]
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Weighted Average Number of Shares Outstanding, Diluted, Total",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "terseLabel": "Weighted average shares diluted",
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period."
       }
      }
     },
     "auth_ref": [
      "r250",
      "r256"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://www.gulfisland.com/20231231/taxonomy/role/DisclosureIncomeLossPerShareAndShareholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Weighted Average Number of Shares Outstanding, Basic, Total",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Weighted average shares basic",
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period."
       }
      }
     },
     "auth_ref": [
      "r249",
      "r256"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "4",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482338/360-10-05-4"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "SubTopic": "20",
   "Topic": "940",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-10"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-14"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(g)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "470",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-1"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "SubTopic": "10",
   "Topic": "280",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "205",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-3"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.21)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.24)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "310",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-9"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-4"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "470",
   "SubTopic": "50",
   "Section": "40",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481303/470-50-40-2"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "470",
   "SubTopic": "50",
   "Section": "40",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481303/470-50-40-4"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-2"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-3"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "740",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "740",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "740",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "740",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "217",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482663/740-10-55-217"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "25",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-23"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3"
  },
  "r74": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20"
  },
  "r75": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-18"
  },
  "r76": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B"
  },
  "r78": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20"
  },
  "r79": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21"
  },
  "r80": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A"
  },
  "r81": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2"
  },
  "r82": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8"
  },
  "r83": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3"
  },
  "r84": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3"
  },
  "r85": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//205/tableOfContent"
  },
  "r86": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//205-20/tableOfContent"
  },
  "r87": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-11"
  },
  "r88": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3"
  },
  "r89": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3A"
  },
  "r90": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3B"
  },
  "r91": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-4"
  },
  "r92": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1"
  },
  "r93": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-3A"
  },
  "r94": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-4A"
  },
  "r95": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-4B"
  },
  "r96": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5A"
  },
  "r97": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B"
  },
  "r98": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B"
  },
  "r100": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B"
  },
  "r101": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B"
  },
  "r102": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C"
  },
  "r103": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C"
  },
  "r104": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5D"
  },
  "r105": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7"
  },
  "r106": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r107": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r108": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r109": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r110": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r111": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r112": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r113": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r114": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r115": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-03(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-1"
  },
  "r116": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r117": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r118": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r119": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r120": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.13)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r121": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r122": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r123": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r124": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r125": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r126": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r127": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24"
  },
  "r128": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25"
  },
  "r129": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r130": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//235/tableOfContent"
  },
  "r131": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "270",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//270/tableOfContent"
  },
  "r132": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "275",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//275/tableOfContent"
  },
  "r133": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 4.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2"
  },
  "r134": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r135": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r136": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//360/tableOfContent"
  },
  "r137": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "15",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482309/360-10-15-4"
  },
  "r138": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-15"
  },
  "r139": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-9"
  },
  "r140": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r141": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r142": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3A"
  },
  "r143": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480091/360-10-S99-2"
  },
  "r144": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//440/tableOfContent"
  },
  "r145": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//470/tableOfContent"
  },
  "r146": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6"
  },
  "r147": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7"
  },
  "r148": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1"
  },
  "r149": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12"
  },
  "r150": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2"
  },
  "r151": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r152": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15"
  },
  "r153": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A"
  },
  "r154": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r155": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//805/tableOfContent"
  },
  "r156": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//810/tableOfContent"
  },
  "r157": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19"
  },
  "r158": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 5.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479836/810-10-S99-5"
  },
  "r159": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r160": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r161": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r162": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r163": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r164": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r165": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r166": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r167": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r168": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r169": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "SubTopic": "210",
   "Topic": "954",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480632/954-210-45-5"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "270",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "270",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482964/270-10-50-1"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22(a)(2))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//606/tableOfContent"
  },
  "r185": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r186": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5"
  },
  "r195": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1"
  },
  "r196": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r201": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(d)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "21B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-21B"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-6"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-12"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482964/270-10-50-1B"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//280/tableOfContent"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21"
  },
  "r263": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21"
  },
  "r264": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "34",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-2"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-1"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//330/tableOfContent"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479483/340-40-50-3"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-2"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147477123/405-50-65-1"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4"
  },
  "r348": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9"
  },
  "r349": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1"
  },
  "r350": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1"
  },
  "r351": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-3"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r355": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r356": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5"
  },
  "r421": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//718/tableOfContent"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D"
  },
  "r423": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r448": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r449": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(k)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.C.Q3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.1.Q5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.2.Q6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.3.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//740/tableOfContent"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 11.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482551/740-270-45-3"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "808",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479402/808-10-50-1"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r506": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r517": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r518": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482477/820-10-65-13"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482477/820-10-65-13"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r533": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-2"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "832",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483482/832-10-65-1"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "832",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483482/832-10-65-1"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r548": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r549": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1"
  },
  "r550": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-2"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-1"
  },
  "r554": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4"
  },
  "r555": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//855/tableOfContent"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "330",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "924",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 11.L)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "928",
   "SubTopic": "340",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r602": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column J))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r603": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column K))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r606": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r607": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A"
  },
  "r611": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r612": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r613": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r614": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r615": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r616": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-3"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(h)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2"
  },
  "r635": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r638": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r640": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r642": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r653": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r661": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r662": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r663": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(g)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2"
  },
  "r698": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1"
  },
  "r699": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r701": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r706": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "976",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "978",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-16"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r712": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(a)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r713": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(b)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r715": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r716": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r717": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-22"
  },
  "r718": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "52",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52"
  },
  "r721": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "48",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482785/280-10-55-48"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C"
  },
  "r729": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r732": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10"
  },
  "r733": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r734": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r735": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r736": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r738": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r739": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "53",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53"
  },
  "r746": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10"
  },
  "r747": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2"
  },
  "r748": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r757": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r771": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(1)",
   "SubTopic": "10",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13"
  },
  "r772": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18"
  },
  "r773": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "SubTopic": "825",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B"
  },
  "r774": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2"
  },
  "r775": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(3)",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2"
  },
  "r776": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "SubTopic": "10",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3"
  },
  "r777": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4H",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H"
  },
  "r778": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r779": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r780": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r781": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r782": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r783": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r784": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r785": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8"
  },
  "r786": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r787": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r788": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r789": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23"
  },
  "r790": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24"
  },
  "r791": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5"
  },
  "r792": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-6"
  },
  "r793": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r794": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18"
  },
  "r795": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r796": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//320/tableOfContent"
  },
  "r797": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5"
  },
  "r798": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r799": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r800": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r801": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1"
  },
  "r802": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "340",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479483/340-40-50-3"
  },
  "r803": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r804": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r805": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "410",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10"
  },
  "r806": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//450/tableOfContent"
  },
  "r807": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4"
  },
  "r808": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9"
  },
  "r809": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9"
  },
  "r810": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1"
  },
  "r811": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483049/450-30-50-1"
  },
  "r812": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r813": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r814": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r815": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E"
  },
  "r816": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r817": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10"
  },
  "r818": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5"
  },
  "r819": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r820": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r821": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r822": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r823": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r824": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12"
  },
  "r825": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2"
  },
  "r826": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6"
  },
  "r827": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r828": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r829": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r830": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r831": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r832": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r833": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r834": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r835": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r836": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28"
  },
  "r837": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4"
  },
  "r838": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3"
  },
  "r839": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6"
  },
  "r840": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r841": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3"
  },
  "r842": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7"
  },
  "r843": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7"
  },
  "r844": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r845": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r846": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r847": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r848": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r849": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r850": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6"
  },
  "r851": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r852": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r853": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r854": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r855": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r856": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r857": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B"
  },
  "r858": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r859": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4"
  },
  "r860": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r861": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r862": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>72
<FILENAME>0000950170-24-028192-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000950170-24-028192-xbrl.zip
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
M];H%TMFWDYY_>77A@->81U./\AR::E"&5JS?!AQL)F/.YK@-FUU/E[8Y*(\
M.7/+'PS]ZMR6O+IH_X];[6F^?2-;C][!*?AM8N^  T7F_<S?S0$93IL2($CD
M=(C)F]GOLT%>G4&>BW$IL<@]C2 0:@%"A_,&V6A -$S)16%%!-K7-5RZ#@SG
MU&=OTFUS5\29Z_ESJC4;81TDGB\M$9F.=78FTX<9\<OA&-I//X0%+'U.;\=-
M.02Y8K;HA;.T%^LOI9_/\4DBLU"@GFDO$0.]%)"98*2S^&)U%,0+9KGI'#+?
M!(8+UHCK@;';1VG%O."1XC#/ZA\P=RI!Q^6) 2T.H%DD4)X<9CH&SKN&PT\9
MBWHB?$,$5MF SQ)%0'-!T]<V($ND1I%8K(-4RF'7-02>XU(=0SG:LKY5518
M]WYC]G#%,&/7AQE;'LQ <5#$&9#]-(N(>QSS;0#\%%V*$FM&,.XJS-K[DWPU
M=Y;>[,9F! =\-#5@9I-6L[OW^4F"[WKZ\&K!=XV=FMS'CRY8_.S-;1:OE:&<
M!(YTE IQK#1R,I,?XY1F-LH43%=QMQ?ZKF;7G^#[]6'X W:I+NV@@9\WJF:T
M&\LC-ZX;ZP;Q21YH3S3'1#&@PA*T<BT2RE=M*(5@+&761]99>GPM.>BP/#X!
MLOV<$'K6?JO\%D-^$V=?/DTQD @!Q#@@EXQ$W'"%M#4Z7_@(;"B3A';62-G>
M<>W&XW'M#VT3/];506V/SN#O10V6@<:[V5UD,E+^]0_[K3P:_ZCG6V#(>5Z,
ME\*+K>;*Q>20<DF (&(PR/Y,((5#U)$2ZVSH+-![7IQ)U[OQQ#AY=@KOJ^%!
MOI6\Z(LGR8$IUH01(9%@V;=%8L!D9@)*(%!K+!.QNG/DZY'@TMYA58]NB4S+
ME4+NU1KS,'BL&,:J16&3*;*WH!K&I!"5/L0(_T5CNX;'/W3]>'ORO;[_A_6'
M .CZ9+'A2ODF79X.*SVGB6>/SJ HXD(FI*4-B'"!L[ O7.R<S:RG-EVF-@\C
M]'N"/= 8@UC@V5V:$F0M"(% @:3V06GNNJ^W9NHQ.LE>W-7P%(9S<V,(K8>*
M'7RT9=@>;MCC<F0'3Y)Y:,MCR/[2,O (9"D9I+4 F((X[P)QRJY>G+^I+H,E
M8G@9-!EFY4G0##BG4?!7C,AP+Y'$3 ?'M0C=Q>7/PW$SMH/=LOESI_X\],!%
M;3D<G;P]^6!'XSHND*6_C>NLT@SC=K"K5S.7PRYYXI)9RY!T#@-H- 5VJ0-R
MD4;G:8J!=HY=W@N9N1[3'A^-!\ IO\3-E*(?32(Z=M)ZJ(Y/^>>U6H9_ 2.-
MX:T=Y#B[QR)MJ2"3US0A.,@><4LMLM19A#FUGBCO5>SD%3O(PV'L1SOU5)0X
M(UQ\@7Y._A$/2S^(6[&N5WU1^3 "!C<81RPE\B!7()ZD1IK"R<>,,2NY3(K$
MKH%N=J2SS@)GYS0B[(Q!<2JE?JSC43D^FCC$QH7&71(PVJC2I8"3$J& E8*\
MJ'T.R *]Q\!)E(HJG)1ST7:6Q_;VPF[:"Q^(,&E.8^(&D1Q9R1-VR$F@4\$2
M:8#?<"58US#YHON&<GB-^X9K(\R-+#B?<@AX&R'=1@#<BPUGB4(I-@1T I,O
M.Q30,J]X=J)FR'EA*$TL*DT> P9<Z\;IVAAPSCNGI8H@1K9Q2L#@VFCHW;W/
M;;,?T:G'J41S0815(>:8?!!9)!?(I@#2IM7>:T*5%;IK>'$=D>5#-8KK!W6\
MCG1R[0'?5TTS\90_B$-?QF:FL>ZDT\>+CGE 88[*IJGJDSR?E2,0 022UT2@
MQ:9W0J"0"#=*(0_@13P"%AD1.+(,F\ HT41UUH3?::/:PT@*-'K&J"!("QZ
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
MLZ#RWRE2R265O# (#C4'FBLYT@8D2&5=9-H1HEAGHPCV#FT==^/QN/:'MHG
M=0]J>W3F#N6B!D^2,#LM8[+6(>MR\@3X.Q=$!^ILB;7""0K:0%?A^"#6^Q41
M'DL,2SHA[TE.#ZLBTBH(Q(*P.0V-X*9SJ6:Z8AOO [S.66.5E2Y7N[8N5V*4
M1"!+ *&\\Y8G'*VSG27-G<];L\RJ?=:P[,$+RDI.Z)DE#IUCNY2EG@2E@)%V
M5E/M9>(59<%^G"1'@0:7:*YG: 5(@RJ! !%-0C%@P1RG,G97&NRFG_,#^04$
M3F&7(Y*$ ^L0(-J;Y#!B"M,$8J%)JK->)8^E%LS9*]A%(-^IP*CQS JOD.,
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
MK)*2Y%IO]N  2%H^8/E<Q5'QQ0[&<78VOE2M+I"UG1P1.?W53U+*9NHZ.BD
MUUHBV89,IBR%0&]S@>7T<+XL)E2VFH@K?E UN;-C@/E\O.80*'G[[72,)J>M
MS9_DN4ZR-4Y2V19_3*8+K_[W>!@+AE\6%%.6P],?#H/^W[L1CCN8=J<49ZN-
M6I\+["YR2H/-]=,$D \9+;+::L0LL1B(CL?\.Y*C+8\ADQP9>$1<) -"OB#(
MXA!=($Y9&[XG.1];!7)K4-G1"U!1RTEOG_<_[[U[ ?37ET<@6OWZ I^5NH;C
M(Q2J$9HV>/$;4R^ED2]Q+N-R=D4/1Q?.Q[D^86HP*5*5S]_I2;R@JM5B3NFB
M&H]:"U1+*-HOMJ*KQQ8D'6K:0\E?MDDC.G8VK)!,>S@;1EB'.,DE54,T*$7I
M>!#):OS=V0!>++ %I<5;ZN&;M@ANE*"Y$*TD\X'D#!3?I?AIMZO=K;UV6W=.
MM^S,89EL^N)YV?ZP]8,30^1+8M1+S$AW3\P=K!#?)QV.SE&5 HJ)2\1ITD"9
M(D-&)ZRU]AR+.TM1,^6QV9Y7#X_A[0GT!IH^* V?H.NW P#GBR(VWA[#9Z-Z
M'*]G^. WH@W\>(D%T^\$U'<[&Y__V/SP::_8_K"QL_MQ9W?]T^:[XNT_B]W-
MK<W=S0\;FZNLT=L)&ODQVV"GJ1LNT09G"1Z^Y&P[U;>34W/*-+_/W)R:3?[Y
M9@"T$AAA.#74M*;_2_K.M!2$,5#^!L51C*TP-J/5A]4@9-7ST,+(;4ZU<@%Y
MLX!6S] W&YNKXJ.M1\7V]O8\8=#ZI./=N9%["^A.03#Z^]IY'?2,N/Z=!GIO
M9<OH&LWE.T(%PD>\U8W8N7G=3ILY=WEVGN(-XC<4RJFM(N>C&!\-WX2R.1[8
MD]?Y;=OUU,T'K_%R^.9?XV94II/9*&TK%(=MC9+Y?A_6IQM^$"<N0""! WUX
M;0=?[4DS31"Q.)FS=YBB')X=.S\ I3#O2$[2,=_M;P_AXW%O +N1$:4#!6"6
ML >_?WZ_56SOO5__\*[86G^[N[VQ_FE[Y\/+3-MO(>\^C4U9__#A\_I[8&?
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
M<EQISW">$L/Y[ZK^LRB;XCC6.6,!<(G,,3+O.0W"]C!J=13KPHY:_E,<#\;
M@W)$.W163.8[C^,NOMBZ;..54P3^4]>YG/&T>O%AV0:&#V?A'] )?/TG&A_W
MS*AG1CTSZIG1#RY@=OZQ_0X1T_.@I\2#/@&/.1A4S@Z O=35T'XI:V PT'F(
M1Z7O64//&GK6< ?6<,&^/#S!O&ORKNNPBQ#]G]UC%:O%FTZN[8[,(1>SK(8Y
M$565LMXQL*,VO5HUG*H4H9X8RUYFG22,_21)V#2M4?O\P&;=9-*D/&[_S;W6
ML6G:ME]C3F\U/LYNP?"JAL7^>VSK4?M-JQ--E)LT'DYJFLT#VD%)JE)J#JLZ
M%E4Y:-L>V)P\[$L<5,>3_%EUFW\LSRR&GI_U_*SG9[VJ<S7O>O=I_:?FY^Y1
M^,X?AP[SLG<Y#6.=BV/:;\5Z=A4!$/?LH&<'/3OHU9N;LXC-CQW,?=)K-S>J
MW#&$L>)4,?E85WY<GV;<S2&-HWJBS?1<HN<2/9?HE88?<(2]W[M'-3M_%CK-
M'[Z4=37,+,$.7A9[59M_,3.'WRM8<$[(V*<_Z5E#SQIZUO CUO#-'V9/G&+=
M]]E/GA2/V(N@-;2^X,4BD/-="3&,OUPHPM&SBIY5]*RB9Q57LXJ%2DO%NS(7
M?*F&/<MX2BRC3>>^ .5))9%)D:%XD+6-GE/TG*+G%#VG^!&G\'T8XA/E#W^K
MQD>V.(7PHA/4Z</1H1W-_*;:0A[5<9P4P.[C"WL6TK.0GH7\B(6L[[WMS\(3
MXAVG9:(N3-G>YE[L64//&GK6T+.&'["&=QWT;^K\6>@T:P@Q5XXN_LL>';\I
MWL7CJBE'L[KQ^<+B#UN?Y&KO/8/H&43/('H&\0,&$>OZ)+M-_BOZ)69=?#:G
MHL.L8J.:Y*IJSA2/K1P,-[$NM95GL\&IB5_@DQ/T)1Z6OLTZDI$B?S7Z6N56
MW[T[GB+,Q'CU-=:Q& ]#K'.(WMSA-M^: T/*^4_:1%K3G_<.R^.3G#W^4VV'
MC9U&&DZB$-N>XK=I8=M45T>7?C+G;TO:KN+"'(D]P^P99L\P^RB2JYGHHRC>
MWH>5W/3^YDQ!K(N /"O"GNUS.1:^C97_T@:J7UY):Z'T.W#$G?EES_DW&ZT?
M6IN\<N_0UO&P&@"';?Y:;/Y[G#7 S)_/?6&;PV)K4'WMZW7U3*YG<KU6>%N&
M]OOZ^L?N$?G.'X8.L[/?XQ#XS&!PDJ^4XG'F2PMW2Q]KX&/E\6#";;+&]7EM
MKV<5/:OH647/*G[ *K;W>D[QI#C%>)"*[6;0JA=3NQOH$^_?;_0,H6<(/4/H
M&<(/&,+.'SU#>'(,(3L6Q&^EKWHFT#.!G@GT3. '3"#3C(W*-GV@_)/B!>N#
M:G@PJ6B2@3N[TK\!BX!_<Y!D^V,HO\Q7/XC?4&AKR9?5\#5,<7PT?!/*YGA@
M3U[GMV^.;<@7+?.5KHERV$YT>A G#Z9KGLVY_13%87CCJF]Y>Z&'UP[.8:RA
MHV_7A "A\/LM@>!A%K&^]6F;3^?*X2\!5UF> 07L=[OOAW,:=FP/XH1$(9M@
MFJ_MX*L]:=Z\>'4>0+/=;Q'RXJV_RPZO_C0O83LO./BS+9U&_D[&GTXW3^VU
M'8^J-]/MR#/*NP,+R,T1H'8U!A0MO\7P9C(@P7@-_^?L \"2@3UNXNMI'NXX
MVXF6?$SZ?G&>+^5H\[:TX<GKV?<7,)WI<.8_I["^Z.45[S2>O^R%OU[XZX6_
M7OB;[^3?JGKH.EDWHO,'HL.BWPRJQ<ZL5,->K+^4/O;&X9XU]*RA9PW78PTY
M(\+ZW[:6=VGX;$Y$AWG#!BS*EL,<%G ,/YX4335H/0^WHJO'MCXI**9\&BQ@
M<UVZNK4=5!<DR9B' D [/[!-4Z8RUU3-80SP=Q-'Q6&$WG/P0F-!Z:J&;3]G
MW"QSG=5WT<<C%^N"D9=Y?-:SJ)Y%]2RJ9U'785%]6J:GR:FR6W_U=9B#RTXS
M, TJWWKJ \-JH0\*334NF](.[??9F2Y*[3CQQ9^J0V>?UA'FU+2%]^#CX[H\
MRNQPFN)I>+ PC9X]]>RI9T]W8$_/-OYL>Y@OF7+@T4>0@3O(L?K0LYNL]'V5
M[]EB?92CRZ: /<Z G<983_2C.(D" RW(V^80.=MD+>EKFR'JR)X4+L(_(>;B
MJA$F6N;[J7AT/*A.XC03X; :HMF38G+W6M4]&^K94,^&>BWI!RRG'&8'\5NF
M8+C^,!?F9.C>UG;JP'68L_W_[+UI<]M6MC;Z5U!]3TZEJR@=R5.<N.ZI<IS)
M_3JQW\C=J;I?ND!BDT0$ FP,DIE??]>SAKTW0%!2$B=F+'SICD42V.,:G_6L
MM[LMYE3L9LD\W36SI$@O51G1.)KU#FV^TTD%32IH4D&3"KK5ZVFZFD/^0LW@
MDN=U#<J$(^7?./IK<L2*XV)=U:WX1$O=[#3:;$X&Y?X\T.,V>;=ID"Y"NS_$
M]J[S=JTA.,U10>O B=KZ;K$K*9).BCP5 %WTS 6:!::K*4PW*:=).4W*Z5;E
M=/%ZTD ?DP9Z"11_R6D?H8!B,O;D=;U*R_P720=)#"XO$[!M7*6SY(*TSB^N
MGNAX)[4QJ8TIN_/;5,G/Z>+2'6$=W934^565<TP06)6,!%@F:<)5/\CKM.2\
M;)@R,&\8$L ?M]V\*U)<&N>*9%[32[ >H-;MF".7GLN\@YXD=]-E15YZFMW&
MI7/Z25O1P[95#A=G3CX,?W9-+A$]NJN7]-C3Y"W]24Y9DB,:MP"\6UVF_CBV
M.3BBLCJ_<B4I.GIX>%7O.8J8:(3]%[#Q,':#6PS&,VG(24-.&G)RK&[6A@5)
MC3I95UT]A?@^*@?K.VQI0@?YDE3#?!=A%02:4" :=U455\9IBSA?E2G5O(+)
M]2\-8!%HE$(KM;//&L7GO7?B^$EO37IKTEN3WKI1;[UZ89CRW:2W/B:]!43Y
M?YV?G9XE-)8"NJAP+=PK4CL+<J/RUC#>._&H?J*GEVZ7?)F6E\DF)9>(G;XR
M^4='WMO#,RY6>L0,[NF&G#PWQ0XG#3-IF$G#W*9A?OAVTBP?DV9YE?^G<US\
M^@.T1%HDWT[8N$D73+I@T@6WZ8+OJ[I=I2N7/%_5CC%2DVKXF%3#]UW1HE]'
MDI-_,&]=5KJF23:VZQ$V3GR._X^<C,5ZAFQ0XQ9(PB B%O>"!/[-<&^HB952
M(WSKAZJ-SE$/*(>W;TIN1N4_C]ZWA[]+0=70-@!/P.=I:"#TVWE59KX7Y4W=
M)B7#-#I+5RXZD#U(PHEN>Y&X!LVQ1C& PQIOGI2T\J)_+)3- I"_,BVU@2;W
MR.0V6YE;IK3^DR:>-/&DB2=-?+,FWE195TPL$A^7^C4.B!B2H;V058OXOY,B
M8NC$+-GF6U)ZL^0J+:Y <T2/!-R#_JMI*T#+$_ISXPI1-Q7IL3K"I_/#TQH:
M?U'5VZI6Q@K&=]3D)I;\\*UKZVJQ=ANL^2QY]<.W"4/C,UJ#&LTKFQT-9S/I
MKDEW3;IKTEVW>)%O+O[U:?/W27=]3+J+7<>3-QWID,8E%]UV6^R2?['FH;V>
M%,.D&";%,"F&VQ5#\BIO-7HT*8B/24$@QE:DUTT'Y$)H(>^2M]?TA=W)A5L@
M8/>/+LL7\"B^RN%:+-KD1=75+0?R\.TW:9TW:\3++MK3Y&VZH8GLM,<]_AHH
M]N#N@.V5AYXEAQM0)E>GR2TTY+-D[E(&5&05 ]%+#@LF#\[.GYZ</WKZY#SF
MER6O30"%59F\7K05OOEH(HN=%.&D""=%>!=%V,^-3'KP8]*#;^IJDS=-5>^2
M$MO,?;PLYA9GN4AY_%!="=?X$]$>LX3S1V4I_<RTE(HS4Z1QNABR/K"E9LFV
MJYLN1<BO,E7EZ %%D6S3G;WSOQY$B$/Z3=$U&!@-L&'R<ZLOJU7;/CP]^R39
MT@#3DC3B#(_BCE4TS//'"#.2(L='G-1KZ- 70JPQ=[3@I0(4AXSJCR8E.2G)
M24E.2O(6)?GZU11%_,B4XP_D6@42\Z)JFD]=\_>0I4JOTKQ@#4-:K")7C;Z_
M[+C\MTW?J>I95!LW2YIN#G0'OFC(BR+?T)EB8,JD8B85,ZF82<7<K&(J#09-
M2N9C4C(ORZ0KMS4Y7PN&[X$EHF$$89YI!VHP7DPZ8M(1DXZ8=,1M.J*<5,1'
MJ")8%R"TYO4!0E43Y=ZD%B:U,*F%V]7"ZS=?OYATPL>D$WJ<K,J&]P:XZ,)U
MF^3K=R"F0]3J1=65;3UUWIL4Q:0H)D5QJZ)XXVHP=7(W@"^K,IMJ>CXJK0'8
MVS;:8E2E-DG>-)WPT6GB_4!>'_2M7/%C.N>ZXLR^5@5=N]K%B8[1Q#^0<Y+P
MQQ-!S9JD&^@H4V(RI+:B<TIC^J_'/0A JD6TX0EQ>:^4\[:C<^3!H;=&7G)1
MT:_!,URXMBVD!+=?(MQ'QDP:=M*PDX;]'1KVWK*?Q^(J"+3C4[T3&_JO94,G
MWRM=M$"<A7UE$("I4M8C]*6R60*XEF3,CTY_7U55AK)69705CO,%#;+:N/HT
M><DTYM!.79D+V_IBP7J4E-C;:ILODB=G3X1,@A^?BE+;UG@8LZ_;Z)@/O3#"
M<K3234FY^H&,'T[M^[ZH5N2%@N<<0/,K5W:.E+,C54U#3YO9GC:.GD"O;>B_
M&K _3;ISTIV3[IR\TUOT9#ZQ3'QD'NF/^2K/? ..;;XUC@D [,9[<+ JY/X=
MI,2D%<>D/B;U,:F/27W<HCZT#]&D03XF#?(\"5V7N$^4! <-+9E4>2%\?N2B
M9.2B%)60#9%R*0JDR/!AU&4#B@?%OQWP>)-BF13+I%@FQ7)+UNSUA*[XJ'3*
M&U<OZ+_2E3NIEB=H:E@X*(<;U0']/VI^^#^S_,I/N'#O3J2]$SWA"QI5MRF?
M97E#YLCN"WSZ;)MFX(KUDSM]G)<\-KUT\@>=I@V3?WKBRNS9O'J'%:4G?#&G
M.^=J>M"[.R[Z^0/Z]V]<]P57"__FF^6'<^/K#^Q0GN>]O: %YX5?>X&UQ>Z)
M)$J7-,XOTN(ZW37/_O8_PQVRY>=#.+[VOV>)__@;_![6<^2RVY+RJ;;WZW Q
MM"_2KJV>Z7)@1%@=F@"^?D)GN^KHC*) ^YF\\/SL[/3L$_L!'9,BW3;NB\9M
M4U1PVTJPR)!G_VVHA*[R)F?VYMT7]OL1#:.O^_P3W>NQ#V_X[.F9_W"R]"9+
M;[+T)DLO& 9OWB2OJO0(<[-'?R&.V-Q[S5TUW55>=4U2T/9*(.&G==3$;%G1
M@!"-CJE+A -LMUB#K.N-%/$AAD#_N:K3B8%XTBF33IETRBTZY4<GW((D79(7
MVHYCXMNZ!YJFCC;>^K <:FOSF[K:_-86-@?ZUS2,O0V=8P0^I/E:FA4W!<@2
MFAFKSVVZ8X[*_"K/''Y-/ZX=J<_%.FWXT>L4+064(VQ1;385UKA:7,;\E7\]
MT.[[Q#'^-43^-+6_XM0FZ.Y[4-X7_SQ"1-(17HDCV-7;###2,!?0/LD_25?^
M(063DV:8IO97F-KDPOTZ+7#QY?.C.R&3F_;;-<+%)BV*Y,NNR;GGZ/.,OH@.
M .FM2> IJC?=@RFJ-ZF$_[V8&%<^+IWPS].+T^0"(;C03OGK=XLUHG7)BVH#
M'OU).TS:8=(.DW:X73MH/Z?DJQR8IF,L]C[ZFW'$N@)I'K_%M0,9EX#HW&IB
M"IETQ*0C)AUQ%QVQG\&<U,3'I"9"8OJ#]=V:@7X+G:_H >#.RLM5,[.7UZYP
M:8-VE2\OA*ADS:X.S7XG.7Z$R82X*Z\/<''M4<KY)T6P@QN0"E"@A;1@,<3=
M\(E"#';MY$=<(*Y#3[95TSAVS(Q@3!G+*IWDI(LG73SIXDD7WZ*+ 55*?C3T
MDC.$[Z2//R9]++M<AUW>RBXG:=>NJYKKOU33^J^05NFV4"?_]3@P59K^C8%T
M?7R;6RZ=(/]8C_JND^>/1<G3:^JJ6ZWW/@G]*-_3I)-) 4X*<%* DP*\10%*
MD_HI8/E1:CX.6-H63P'+24=,.F+2$;]91[P-A+.3FOB8U 38A)NT<.;?[%D%
M__W_/'UP_MFS)NJ;G#:-:R7H%Y4.A48"H8Z(/A&61]!O)?_ITKHEOX=\GG.K
M!W+OM,9(VQ'H#X6+N) :H2@(B7(E#/,;5]<[N.QH31#BCW=[ #,8VT_OVNA@
M4IB3PIP4YJ0P;U&8VRY+YC2 J6'G1Z4F7\3ZC?<WH9FLK+S6YNQICT'S#W7G
MDL*5JW;--;%-ZUPQ9$0NJFO.$P8*9*BG*T<ZMIATSJ1S)ITSZ9Q;=$Y+5BYC
M#DC&O$B;=?(-"94CK&$]^OMQQ H(X3PHH:K(LU3J6G77F_ZVS]"X99D7##T!
M_*-!DK.JIXC?I$PF93(IDU^C3%Y+R(?$SJ1,[I$R"=L^*9-)F4S*9%(F[T.9
M,!1K7169JQM-*B1?_Z?+V]VD7.Z1<GG!Y;6<&CI\(F[7.Q-4[CC/[\<ZKTF/
M331Q?=TF+)I5G?!_Y<?8QO((V;*.8(\/MQU;YF5:+G*N6J*GMU)YQ:F:O&DZ
M&IJ0IJ+=L_9M;E#/-7?KM%A:.9(OIS*H05=O*\&5;^OJ*L\$<Y[3==JF-9VA
M\-J4WE)S%91A%[1 JM=PV=A5%>MP"L)RT:_SG3"ERMF,2\-2'KH!,M#7F8VR
MLBI/XF>G?1Q$[?+-G)XB1IR.19].[^JL*BR]J=QK\A4G'3OIV$G'_GH=^_:_
MT\WVV?=_&>4S*=;Q;:27,R!O0RJM)CU'*NNGJKXDI6J*C30=OC#/BR(H/=.Q
M">E?TW;X=/BX!,VF)G;7O[[JF:8V*9L/IVRJ;;Y(GIP]^<N(Y$G='(2TU_!P
M.OS_HEJ1.\*P]#IG?8'&%@W]8X[.%NR^/+_X9_+@[/S1R=GGLP21R =AI?ZP
M\_:C#I&KA5^8,R=XPA?F7?)@SG_K8 Z]>O+(_E*Z8_+(CDU)'H-._,.S=Z!'
M/3Y]<?27X<@U(SIA6%*.$W+/2<_03">=,.F$22=,.N$6G7#QBF-RWTV*X6-2
M#'VE\*HJ5\VZJAV-@P-MWZ7UO*HY9H>,U_/%E-.9M,6D+29M<8NV^-?S3YN_
M3YKB8](4_TJ+CK'AR?.BJ*X!&J ]GM3!I XF=3"I@YO5P4_T\]+MDB_3\G+2
M"A^35OB.] #:K,8[/.F$22=,.F'2"3?K!*'LG[3!QZ0-OOGJ!8>-M.>$)AC*
MY&5IZ&:%2$\J8E(1'_>\[##3_X-]E_\SRZ_\7 KW[B3+:^G[\@7=N6Y3/LOR
M9ENDNR_PZ;-MFJ%@P _\]'%>\D!4J\@?]!+;F/BG)Z[,GLVK=U@L>L(7<[H>
MKJ8'O;NC2#E_0/_^C6NZX/XWOUEU^.'<^/H#VY%?];:"UIO7?>W%R39=.9$<
M)^F2AOE%6ERGN^;9W_YGN$&V^GR^QI?^]ZSP'W]DW\-RCIQN6]+CU$O\PFO9
MHWE59.]C$5ZD7 R4UKLDJFHNDV^J^CHE/?2JJBY1U_.RY%J: 5%N;ZUXCJB3
MH7OZZ/3\X<-/A@.,[^"M _[C4)._:\'>AJ)=!F^GN;"O\FH5NEI-* W.2V6$
MO78)"<!%US1<YK2M\$"@O)==V]6]4JB9D=*"V146A[&ZGOI]V7_3C"%V6@BU
M<6F)C[5TJTF7+EE+MHMKM1I^M'[*_8+?U/D5/2KN&QQ(8FG"&!LR9/C1^>>?
M/YYQ316Z:D63M=Y<O"EQ=30M6EO53"6X!!QPEC0=K4G:V-1D/'7BWFWI7SKU
MN)U6H.FM7=,5;?.,EI-4:I,OZ;$\2*P4O9".,C<G*VDO'</IZTN'[^<;S-T7
M[M=Y<XG7HQ[[&0J\Z%C1;ZNNQ>(^2ZJ\X$>N>)1HD/D,&'U=UKR\<DW+S\K<
M0A<47\=K=5))BKVBGRU 8[4$C96P"^.?\[3 7N/#+9P)GGJ9Y3@,>%/Z3O#_
M/&[IKI?&'=.: RU@GB5%_I\NIP?MGLF2O*,MM5_2%.FAJWQ!$Z#M3='8A8X5
M$#0P,QN#B:9T-A?Y%@.8*5C3/MJDN^&?R H>_HDT?;GWT[DK<G>U_TA:R7PS
M]BXY#GM_MOLP_'M+0L/M_SG'Y<WV_ESDEZ[8F\MU7A3#OS7KJBNRO;=5R=SM
M#<WNM?T=6X"RR8:.#B@T:4JU]'EK^ K)X*0Z)(?P)-%&5PB5E2"DKE4*W"1D
M9/_T;/+[-E4GAYS?/#@I ./2O9T[%*!  $ NH=97C@B)(+(C^&1SLSI\-W,X
MFU ,:7*5UCF7""_Y+E<UA!S8KNGMLV3>M4E9M70(-[D4>LZDP9"_OSU!YV\&
MORM4C&ZK)I=&@"S.^ K++0QUHJ%+D=Q3+=4$*7>UH1.>^LL/29WQ\W2M#ET>
M^OX."[.I,I(K+D,'0UH:M!:$R&JVLE6H@'4U+3?7LH+QE)99ZG=D1;^L:*<\
MQ7A8W]/[K3Q_<K3A(HMH4<&/(57(-^A/[!/.TZI+R<=NG8#[]G6FG/M%VZ%N
M2C0$;R;MXY)TDM54%=H.4B^8EW*TO2I49'M1L;QQOK#XIKOW<L--2.BZV'7@
M.2$R0)-%@32=UL'(Z*[?=6"W#T&OG_N"3NAV2P^B(TT_HE-7=UOEN\K+99&:
MI<<""&IF%BY+0W<PJZY+HYA?J(R:)73(.]PK>E[:T& ;-.><%_2;M4N+=HT"
MA ;/*E+8%XNJ49[ZE:NV59$+@S"]9TF_:;4%IO0FDUKPJPI#*U!<3</>5[O\
M3S$MO,#9;-&U09N<K8IJ[B\^:;W%;E'P2WGHSNR<^,FF[I]!CFSI;F)MGF%(
MN12CT\V@Z\+&!>VL+XN/OG_E>'PF<S'OA,R+NNY*KIYG*T\5U;-AI7O3S:WT
M#_/! T3&.GL[MC+G-T:"G8_27-:*SE #8\WIZS<;_FU/W>\;([,@K&DUY[49
M3[YQ ,K[:T>2F,4Y3;6N%FNWP7K.DE<_?#NSM>/"?GHSB458P=R%!R)XM>N;
M78,Q;^B[W%N!!7Y7\[ZJ:>;'ZB?Q+-K#F!V Y:]:4[Z<,J-'\1I@:6!?\I>>
MJ>"6UJI!<NL2A2U:! H?_QIOF3P+[P$)=KQ]N!G;CK\3M%R&9^&N7+N4I\C<
M!#+B]"HE4T"7!']@9<F')O>QQ 7.$BEB?6CT;1*<_^G2Q<[69)/^#,N9C+XM
MY,'>BM=I#I&2B0;$712+<^^+Z8:5//KC\@[A]&1NWII>AN5+6U [>A*N(GX(
M1X'&O4ROJIJ/@*[YX-&BG%NP,"SI3N6P+KSNWQ\Q^@-?.5:KOAJV<"L8!G0<
MG</QW7^)G!IWHWFL7L*:U[@)3$UDUA2=VWNDKD3AVI9),98V?3X$0ACA6P7'
MI]PYL0J4.,([*7'3#IP+QZ5:S[C3B%!+139^)'8B,HWH*.A@R'2'Z^>:9N27
M:0:=+YJ"1D;"_RJONH;TA+3/<IEX02T[8 6W(8ZZ(M/A0] +H:5J>0+I5XBI
MN'&DJ[+]3: O5#2ZI+F4JF<:W"4)%;@Z>#A&>.EV>&Z#UM!T##M(_U_\S..3
M13.A'[$ J/?7*'R3%HCN5"0HX/)BD3SSB'>/YFE=YVQZ5$-WL< :X@GSKN'E
M?.:OKVB<)G)%:3#/>(O5&.'V,?R]O.;5[DD4DA49FCP7./Q]USNHMP7,]IJG
MPPLMNHA+YVJWZDA-5O5.3_!57E<E>X5T-=)K^DF1DB4,H9]>T1'3'<&))8.^
M4+W.+C-)Q!UI<I6?>0CMT.5=K$LR!5>\*-!EVU;%IJTOJZJT347YX!6(.)**
MV%=RH($I'?L'\4+]7-&S$XA#V"#1](-S2O80SQU#C>XH=/Y5WFR>C9@$V:#X
M\7<5.M[)RKU[-E!]PQ\1<?A&QOO[*B#?@RV.37E#&Y2\G"4OZ3 DY\_E5(;X
M%LNTQGPBT]7=5OCOYCNHP8;T#H3YDHX;R>30X_WBZQ?WW-MY'C2N'5+85G0(
M?'LFDM,UF2PM">/,T1[D&U-WL]!* ^X/3';YWF5)5CK$4,>/TV]!PYNC(+=L
M@9 %7:2F^BUN"+XLP1>7V==/DV])?/!+Z'%=J4VR('YG&@]C6[;V7A[WOZ+Q
M;7#[5>2Q9R5N"1VERL*C>.$M;N <;K@T%^'(#?-5L81-.-TAL0P8&;?X2WC$
MAL3Q+(1F249BF=FHJXK3Y!LY[##?^/QOTDOGQ;EVTC(ED7"L2[T^677NF<Q?
M\FL7^;YAK>P8L,AJ\8ZRBDP$UM?L:]%LY=[Q$2(-WHAU='B6-CDR?5-2"V4!
M96B;P$^2)8"]CR<ARH%XR_7:\36G+Z<Z>O,D(DTQLV.F9BVL8/K/HMKJRV6M
MR$+)ZT6W06_I!8X)C$L\_IHF()X@+3MDAN\^C;%$>I-/;3@RL_BS_@;,['3C
MW)(29254FV:57QV42!];+NNCG]R4;?Z#M=?YE&S^ZR>;[0 E>89]J-M_Y\>1
M=W[S_/=8ON]Y,#^^35[^>MGY7NQ2WI@<OMB_S__]X-^FT?Y-WNH6N1_7',=^
MO61W\5R<U0>GR9<TT"/:0;8",+0W?MWNM^_Q0AO8:IB4#+4,,=V03CA"]_A;
MA(>0GR!S\RW&;2G4#^<DSQWMKB IR@0:+\GS4Z A)-#,KH"._H>J=7[$DMHP
MPC_^R+R&'H?\-SZJ%[')?ZI/'/M07_!W;"-[[4]_@TG[ 4_U>[[W7W'09VOQ
MP-'&/O?P]G_;%<OD95- (GX3DCRSY&6Y.$T^;:N5^'@<K$'@%X&</,N1V6\\
M55CTE#WH0^"#WL-/[$$BNB;&0N@?Z2J$LPQ7\U75Y4V>EBGYT/6VJG7$ZJ%S
MRLX^$"EV_OG3Q^Q6,Q I*5S:2VK!]5M*&-6]2Z1'J?0Z]5''395UA?,0JZL<
M<4,DY[8.UZ[=)8VKK_*%ZV7-+$<5<!*S9$WN=[>=<18NY\0I9\]JAV#P3')>
MKA3(0[-(ETLZ__R-1<7I(LX3\9\2DBL2\8:OFU_E1;\).6?<6GH">_LZ/!,T
M@\R<9N,:Q\&GT^1UG!BPK+&/0<^$3[M BU8$?UJ>&8>!)5L&UUJ>2$N0=0N.
M)/^J5.$636$U?EYQ;H+^^/6;%[Q-:9D[&Z1M-%+,F?97;W!.BFIA^P\<QT]5
ME>%\TEJ]=>_2QB=)MW6^857B$W)15D'ZT_H'?5=UFW06'4 3P/P! K;Z0SNP
MI\F%.TH-^OH*!\)=?_C@<B/.N%=3GW&<20&0O0P7QS]#*$<VD"%X]SQ\_%,<
M'99S;/S $#S]$&2[KJMNA<A[34<S2D/G!O:T0WVA,D//B)?VD9X8$=<7ZWR[
M4TP3RVS>I](QT_[^Z_S;7MA-MA^:1"?1*"%MC9(RA@;YX\:M%%@#27!X/AB
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
M-D9O)<TQ KYF#;).L^3IP\^395<4)_AN?$25?QM/&WPV$_FMK4^>?O;HX /
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
MZ%2SE,Y#?.UO!/ZIUQ*K$GH.S\][614M5N6-G=Y\;6D@D];</VIFX\=TNTW
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
MI;?2&<$\<7X*I]G$J?1]/\@F:A-ZNYB)IKZY>T.Z25?BGPZ)CBW0!+=5^I6
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
M'/8_=,%@3O+R?]+W/:*U?T)3'W4RZ*#6[3->Y!-DAIHO($C XS_8CH?83+]
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
M>)/CQ"4W;?*5'WFII>2)!/(UR*7Z><EE^H!ZDF.856R[LPJ-42;[C[CG-0W
MW_:HT9<QN:P5CXXT3#18=A.9(>OT%RZW$S8SP-N9S9"L"&L0T\?=<+D24^C^
MW-7<6MT(RHI\25J[ <C8:3A=RD4SIIR-\&F">=/#,T!VQV&LY5CAT!&I]/MQ
MW'KV:82UIEU\A[N^BXB+9WLN%#/:^TH6_AWX\P/ 9KO>-1Q.TB/#YX]+>=>H
MUJ4C*<GB95%54&#[=;@/SAZ<SY+O[-O)RRS5AV7:%RLO,J'6[%.Y7X'3HV@2
M]@7[*$JMM.4@*<LJ8=C06N3OJFZ3)M]$E<PBQ>2J<"U'W%B3_A-421OA:!?(
M/6/KY>+@B9G$:)G'7[R<OVPAI&QYLW!;F0\7,'&IV@A,Q199:5-26/P?GL+Y
MSA6/-TQ,B;KN4/IX/\2([]7+U23:X:Q1FK$5;CX*;93)/RJ*]U7%K/U%,JCX
M$=X;W^_N'Q5$Q7-IX/S/BU?_32+BV7=QVLWK1.Q3Q] ]WE:MMZ=;VL*=;V91
MNXNX+G .0AIZWW4I 0<0H[8VJ,XH[^/.&2/S"$\\($VLTP4WKK;6!Y')I1:6
M0W_C(F_67$0'"2:]KQ$(B!OU@:VL;&0\_,B\3 '!75BALC2*#5O"16>HB'-I
M9AQ%TGU! ))Y'2AU4\_7O^WJII-^LQP,6H'MKD64 K?)TNOTGS]7\Q,+Z[(5
M(0(408%0U5>J(6E8(A/%UC3%KX;P 6%'ZF:=;X5XT.X<3H8)>=_P8,74MJ#<
MA;4JS+90!BD-)(N6F4-9RB*=-AK9 NEU511Z\*)>&?8:)#NB+$B3EY=<-[+,
MS3B3[],U!;W%(FVZM(AU",89 ED]\EJ.;?26TU:9;OL:2RW&']G.B2*H3V,J
M7GHE-S&08%JIB.L0JVD&,3FI/6/JHY3/:X-0CEN2-YY*@V:<IRX76(Z3/@>R
MHL<;A[D?TC80$D3>G++-J//5KNNJ0^=QVN5.J,6"%6),BL7RA/TOIE?FR\?A
M4"U)YV>SUQ'E:<:M>SVR,['&(L)DW*M9S^'K.Y<WB3-\[@6]G3FV#_WI]D.<
M>=*QFGM11?QM @,*78 \@YAA?RJ2LROKTL'\95*!SU)$;Y/OJ<DBP#$W+NIW
MKH0Y_>U(5+07)M9?S_9^.Y-Z4Y\B"\O3<Y_9[(KW2VE^A*95_SA3KCK]67"M
M%6BW0UHM&E:Q,Q(@HZG6"+<O\#8+R"D'07D#?4DUVHSUGMM%;Y$F8:D_[Y/O
MW=[[R=*<T3ZF5GE^[4)[+:$TMRRI9U3:#ZPTX5WV:$XQ<(!>M __FGGY<?A/
MDQ<A;B^U$_9,G^N1]DY>LQ<B)91/,!Z#%1);97;6[U_ JE<#0'R=AI^&9TDP
M U\VO4W+H67]_C)XY2F$4_+.T--K\#2]8;8'U9QW@#OR8'XZG4B SNQO=%@V
M>;>1N6VD@Q^XLQ?:IXLLL9U0?7 N: $VF$5HWG0@BB9]WPHOB@])7<_#* Q5
MGE@K"]2.QG E=3%RMB3<L_?66]Z&)DIBMX6R;*R"K4%OD_NJ)BZ#T)=%!N ^
MI4669\IBQGV.0J+LP-!ZX4?L9$E^=-1C)):<RZJOVBS^Y>TF5:0AR'7XQ714
M)>S!E 7MF*3F$!L(S"1<(IWB7#8D;_(5^&HLY^6VTTY-A5NEA2ZCEP09N4<5
M")6B*PKALK%VU4Q:!P:R)LZ^*<0U;F,GDM^W.6E"T;ZD(/G'$<W832Q9!P3/
MQ NTSQ\LY&>LD4,$33.>;(JKI<Z&&RGI610\G?4;I=<](M@Q]HM^CS!E+V19
M:0.9]+0'*>@Z.1\CM+V*V,8##T8] \N:_7L6?\EX)@OAA_$L)>ALN??P@UV1
M;M[]V9VV7W5!M6VC2%=@%!H'3_19[X1 Y;;!W#P,V,5EZ TDDJ=OD$8L>7YE
M2@\%$%&K-)C:18E5NN?2M$V$G*7G_@+2G[\LM6._VZ:27P>J'R:N!D=1&EHZ
M(;C3V#C%3[ -XL\86B=!^L(%*\$/1<RE90K1,]]QG03#/LCS@UEH&)UKL?.Z
M'N[=>)HD%LX?:QO"X/Z)C6 LUN@[DK<*\/%,-49\,.R^,W?KM%@.K(7>26GL
MB&5L.,/X(.?*XHYHS<0-,B-RUE%?YJ]/JOGA>07O0JJ)O=OGNQ5*\>CR'^3>
MG  K?S)@Y>$$6)D *W^2A;Q?'M^+_C<6 HUZ4GD.[UQD2W 0?R6>_)Y;PW=:
M?F$H3J]R#B.RN5&VIKLUY"RY-,8$B?L?><X]+7X[_%_PPC?LV8TMRFZ;#0VG
M&1P9.*ZSB"QL6)L<!U,D&!WF$ 6CQ 9NO W8D$DCC)0E=S$:_%1R-((!1G W
MAA>P01C3*7L["DNRH349!)VOG!"+LNL/1=LKVQ%"1-+,\[Q96]&L[-@ MM-K
MH>0-)T9 ,#!["(#P8+.^;:\A,R511,.;L09=ITGBL\F#8S$GHW[#)Z \.7PV
M/.F6/QG]Q!>3[X]6UBT'27VR'=N\$*\C%B4R=X.E\^PS S@A\*X0 A50S"37
ML34^WPT3G\-:47-GG'1?<_E6V]2&->YMHJ>IXYS@77 E:C\>DTG[D[7-E16)
M,IR:<F)\6^@+S N-0K.D3J]CM'H? 10H_.CP X^#_0ZD4SWD/:)B42)(SWT9
M<:3GH>V92_:9L-EMED$QL1  0X<&%^];LR^W(L;G7JN*#\^4S]GI/<C,,%1_
M8!?TA!YAUO@H5?B?@0J>;MWMM^Z>VX)O_>KSW@RN.FN:>,'->,D.=3P8@D:O
M*CCS7O61=*D[R6%$8-%54<V1MJ!A59M\8=V5 ^S*.I#9V:J**# EC<)A&ECV
MJJUF=FP6:X2&HM<:QRLW#!(CD.D;K/\E0-."M,G+91&@"@&^Y(?9D-K-R*(2
M.V%A.%-O%$JC55<H=;:K5QH@FPUX0KF+ %"T>9,V+=,K;CNZ-PM8X 6(<I"O
M13<Z5R'GV#+FEH:QI._@<< 7@*-;(0I,_BPA5>;VMD9JX1(:CHF[U,DZLZ7)
MERCJGHEQ]G;GOM^7GYR'H!R4J7>4GS/-I;*,YDSA@*^0NYH+MDVNHV !>D%9
M%;OX3RXB!.2 -Y!W^!H8%Y/,/B,=T(+&)A\:GV05N3###)5&GX7&%BUHI?VA
MO=@#/T$BIMC:4&;)67-G752*G8<V6+UAA+NUU$5EW/A\\_;?Y+56G-[O32)&
MUY!]G+LKC]/H83C3A"ZQ4^K\^9 6]33Y*L[!&_VI*LOHFU;R/A:M$*G%O.Z1
M5?6-JTEQ6M[( (1TA- K2U,%USD."$L8\5TNUOEVATY!UC=RV$$Q!K%;4#;4
MTT:1UGX0_,Z8Z=M7P-">]IH/: _><QCAU\C4"S,@%P9[4M3#]M0^\!W^,&D?
MT3CZJ37'Y58'VHC"1.*=W041;Y=N%WW!)^4BGF&Y%^IKRTD4H\'W#J?WJE2*
M41%C0Q'419BM6I]0U[X8JQ^ON6W(I\DW2C4678YF_W;TR&?O:E]K.7W/3I]I
MZQ.6Z((<%U1WJ#'GW@T:8^".-S.ELTT+,IO6M#;K-/-5_''5N. #2X\+'"U_
MYW#:VY[]HA;")EW4E5E'7A+<N"H8322S9J/#\K&=65\3>?9HC3RI;164XT"-
M>8..#:9X*#$-,(O1N^W0:0AEM8($C$8]]Y83L.U;ZQ-<5"L@5Q>,VRD*5ZX"
M?'Q.VJ,TV!=.YHO7_WKYU<GYYV1ET%;3JMYSZ^NY/TT^:QQ1_=WFOO8]Q#RZ
M)O3.4AI/>]0PG=S_D/_*_&[T'[2O[2ZQ'COJ!4GPE7/PQJO4YU'EFR>HJ:@'
MO>(/H^Z99'-U]4* PW<<_MXMYU>5VG<L7:"$R^PA88>XK>]8N-@QAW;_"N]U
MQHA=?WE%/Q);.O$5Z?MD];&414U9//7##_=E%8,'#[#7LA&^)8Y8U0QDT3 X
M#P)7ONO9Z>($\?OM"1N72OD7_DH.HB+E%6M^DR@C4S'R;2.[E;%RGFXK.+VW
MR4:1VLF&?$)</#X"<]=> T9^0Y#%E'34:U(]9T_BT0178+"9/@@DNC=&C9<'
MT.+1N?871W ?\BK WFPHQQ@<O!^",Y24T$ELHT[(O6"%+PS0?L!:9,(BSS4D
MWL1,BJKW+.,U)+HY3;ZSEE6,*V,B("Z>B(^PGM[!:Q43PDC5L7=RU2$7QG@:
M'=2J&0X(965]9)6SGV@.JB<_U(Q D$C,,ZW?@)DW$,7!%.5BD*%YT;<V:PFK
MQ>9(;*88PMK;) -7,[)N?*3J1NVP%YO]ZSBB7_W.N2K$V6POJ2I_%.^7B;#(
MH&T%WO][G&%_;H_/]9V@4W\R=.K1!)V:H%-_3E9OKUEUTRV0?)!B02GQ]?51
M6OG%Z)&HK!OQ$[/*9D,K$(Z$B$>);<\TP1&7DO$#N7 ^O.K.#[SG7JSP;(18
MA[I*BKP1%,S,^'Y8@R('4-%22ZV0 L.Y2ZSZ#99NJXS) OX*V3J>O$ T(-)(
MI;3TTB) >SD#@)#*)65:-]Z@"Z&^U\,D7ZAFT$:Q,B&SMLH%L.2L0OO=R*2O
MR* SHV^\9,5,(4FU-'?(#,U>1' L,RAIP^#?1BZ*[Z\:M97=8UT\W"U (P0A
MM[+772!V^B*O[(AL@?MWV?BH2"1<A->>Q))4VZ '7:A8$#DWJ"6T'Y^H2Q\:
M/$8%>09,E *9O*07I&WP_\, ?*J;(6YIW9J]:7RI(:&F;89[/HZ7RG(IV&]K
M#PE\*?B7NH\9BCY06],*=D^HEA"87/&<<(ER20RCX;7>'J0:9PG,&;JW; M?
MIW5-[I1O:E5(3^G8V<"/.&7 P@=I Q9*,#T[KGJ^(2@QT$>!L6!\_#C5F]+'
MX7HW40E:^BL6B5"$9-NUGXAPJ&()BD#&@=-2S_.V]LYI3R#'*$]Q406LV7,\
ML1Q\)M,M='YT6IJH<!NN;?#1K8Z+.52[7K67\B<P54'7+E161F/.&T_K2S([
ME,U(^T4)[63DLA?5UL<U]4G-#<0FM/JN35E ;@1.08,T5A2-L*7EPI,(@#6F
ME#-5(R^[C$[I;)0WQDIS:YA69HSXEE0YE,P6#=0CBH=0I]:C[>5KC2[Q>PP(
MMF2\'E@=*R>.%G 8A<2SC<\!NDT:;G.A&@<'&C?B6.Y7R-#IK7AP5J-E%^*>
M6TD_DJU39X7RK.&,T^+D+!=9#I!)D88^:&+V<I)%CU/_NM*V;2OE.+;KZ$.F
M"@SP5WW&@76,I>DV;)\8@.C*C:1(%=C$ DM?,.AHK^6*T85M L6#I0J\Y=0R
MMP+"Y"%BZTUHEK,KYX.K=,K:HB><-/P"X]&WJ-=$$\N' XP5PI44WJC?D62%
MMH2/L@J<9C!P=O1V)J%@=#_'R.P;1H6!3X2<&OQ;J_$2_>%0F)0%T^1_3N7F
MO7MRH>TYI "!C4])LR G18-<J8S4W$3</YT/;MJFM+JT(S"1O4H?IHNB8HLX
MD\67@*V#7D0V5A"!-4;C?\JJV(G$IK_30=C<<V%GL#*KN&%ULX$:J.--Y;[U
MFZ[T?1JC399E%;O(6K9 2]69%#?[N@F_:3W_[AM</H@]SM;E\$"O71PTI_N<
M-K)A\OC>L8K2;D*%PE455Q%K1@3/<L"?D3^W;*]3/89T!K)K]HHEO22AZVZ[
MJA%H8*LP.N=D<BAE_K)./66;\K^ =$\-C]9MFQ[K#@R0#7()6FRNL+2%$G_@
MG^DBY#WEE3.MKH^(Z5A"V8A\/8Q?D&%+ ^8 I-./_8LO(NV7F"E+OH<#H][B
M]7P*-.8=;WZ\(I$Z\L/Q/*IU;V3D"HP 3KD[!BW4SPZ2P=BK6AK@X*W6]9L,
M/4;.R;PL)DY[J$7I-7DNS686.&(A).AIY*.7 ,\.1<Z,!UFJ3. QL_AAYA7R
ML&JD0O]_]MZ\.6XC21_^*HB)F0TY N**U&WMOA&R?(PW[)'"LL?Q^\N!;E2S
M8:&!-@Y2/9_^S;,J"XTF*8JBFFIL;(PILANH(RLKCR>?[)E[@)Z><J\L.&?P
M3AYPPA:6RB28>M4F7+C^#I4/6VJ42)9#KU3E1_80*/$*6D?9;'1?4'_:@9#X
M'KKQ-DS +;(YG[ANB6 KGZ16Z591AJ4&/=%W2Q >Y-_(*+*9A@\ND7NAL;\Y
M*YJ>P-$KO"8I3#:O<X?2<9H1140RW\S 3\^Z#KYL_4DO@SX]3^$TUFZ1'/VX
M( O&-0KM,0YCQL^/..3X743(,(:*0"^@)(HB9L:J%O3-@@4?-35B?BD<IUY!
M= O ,Q9=.JI2$"^PYB=X;87"7>+1ZSEZ2/Y4.J! "E=R\,1C$ '9X,3UFVYW
MV-1Q#J$QUJU!YK]VP2RC?A)*UL3\\VI'VM'%B3^)"AHN.DT:LWU!(08%)(:F
M-62Z$LY+]GP%FC>0KH=[E&QJ^ SC@I2MK2SC;1)LGM\G:WG5U:AP<YT"JR*O
MNK%:HD/#^*PO*REYY)#^4L[*L,L,,CZAO/F)R,<B\)FCV+'W*8C2QA9N$.8\
M[C.H$"0V%3HB;!!7RAQ<KTRW3XFP3@XM20Z9H@=RAK&O,2@,/W'X*'T"^]#[
M5- H-9:O[#;L#R7'\:M+.#EB\3G%0!,>)I=R56GP77E',<KE3G<7?NSE]75;
MB3@AHT;:GKJQK<B,0:8XFC]KT"8)VAY>[\CB@CT$!Z2@FG%NJ>2+%SQ\08N;
M?)I#<5T8#4$&98K,D>=L0P1*6"6)B0.W2S[=KM&=J>Z4WQ/6W3ZD$38F-9@H
MVKFSPIVW$LPF> S%N I8H6Y([2RLKLC I23J#>%LQ#)GS'1F8RCD4$K 5ZJ^
M4M',7/&SC8;U0X\60#BR!]/'KWN)7=88.: J?I'5DLOID&V][=*+I)J%?T4<
M3WYV)ETQ'$P<A*-7^%Q)7<9?M3!7+5R NP\/A[Z=B@8T5KV(3E>$*Z\V-#V3
M[$N55HN6=995[_ N"ZYD>(PD2;E*JRS>X8JWRZRQ+/%UPZO#L_4^!_(M&OKT
M8*=Y%; @CG:[1++;$YG2;2."'D^(H D1= N&R,_9G^@SCM0+?[0M^NQC(0=[
MN6 !$.I1LKLKG?9Z)@<.[7@C15&(#5X7^B-\TK7PF@SL@;(D:\P'_@;E])(K
M!N6+EEAHN3HH?_'UTFE4'!'@;A*,P H1K>.1-VJ;5[(VO74H<.1\5U'.=M6]
M-_8'%H\^TEHG0W+569&SU>(934=IA."!,XJ+[VU_JM<4I1JV&M;-TO!'*Q&Z
M+=(RS]]:%QR_.<U:'R!2M#B2BB;+ K:V$8ZO^69>4NA7/_KY6USM*6?IQ#AS
M)<:9SR\_'U#AL,NVN."J/,S+Z+7)IIH*F&$;%9^<&RI]IK6T(5D)37A/%#.>
MG*6+TZF4"3594WL7S!RGMS )P)<A5;,B5 ]'FDKTC\]: &GQ;>E;79#+'-%L
M#ZZB>X/">]LW9A%G$K; X2&F+XAAT1E?<;H%]N@,DSK85VS(_6@:ROE&E 51
M+Q)H)TR4HP-M+<5D/O3?4'+3*7E?)8B$5+JQ<5*!TGZ<DE(Z<.Z393>(!E&O
M>RTP9QA@E3-(S0N&9'T\<0FF6JM,V>BQR+)#[L).N\-K4$(,&GB1EH1+(,'4
MQU*0WSR-(4^M-'+UC2]VG6FX^>X-0AS8G /3XK!OIV3=D*+D+4-(.L6FS)B^
M.H@8\<XFB3XE]0NVK3F$I?C@<#E58EN@=0"_FA((:G(5PV-3_U%.7A72H\^C
MHFW-L03,LCE<U5QTWD;%"=+ 8= /"/$8&8+Z&30GK[NGQ/RYF]&5C_=_M_F*
M.88Q=(K=!+*SN@FX.#4FSSV55M'LA$[9>X-4;"!5NS3U<CA7*]AK*^)S#40)
MIO-;P^N%W=]2[@&'NW26E9Y'Q3=00%.N5TV^X(+3^[AKEE"7$OX<LI>6"&2(
MAN9RS%3C@<6F681B^-M>*:^X>Y_X;T/4MTV7?ZB,;UFZ Z&' >(5U5?:YUBC
MSH-T<(/MG'0%MP>@3T:2N=/:IQ$"X<SE;\;SO./EM#*TU!4UN]"T2WS<X/)N
M>TF/-:'[H84"X#8$6HG((Z8;-"NY0XG!9=\Q$MW=JJMT3.1'2"67%]S'$#8/
M$_$U,B,5"[$77$4+S8#>+;V%'Q.BH(&^I)B%$>IP^A"N0,".C7A:.VLO?&.1
M3 <'QP]E@KTN^@V]AR![[S )MF%I]TQ'48$53TU:DW,G-+A_FPVS\=2+_6#4
MO=S3(F,P$$Q>M((^>%EK 8)LPX'?$;^/ EU(B(*-$1&F1\PN-7<J6?@^SI)/
M-&4D0\T]((G1B%L]UO.$ZW+TFW7?><*#'?>!UIP9EE72D:')%YT;+CF)IS)^
M":8?> ->^<*[@F%%JCQH:0R;L)(RRZTW@<^5;^]:LFT51M?G@9^ U[%]&16%
M?\!&>"M8+MYQ"YUJ.238AX5K6+!(%*;HKDM3*?TF0P8-S6?<O3"P?VK+-!M%
MB0NX)*:BC3ZQX$"#UU14&")N;@&JERMDE&YKV^OP=%F^^M(C%&N.,?:^9(:
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
M]$)#>?]&.-*:.*$X"(X7K/=E?8XF;JK3V'WD233YK%,=5,AQ;,^:VQSI54Y
MM+&(__B<*#!/%9L:EY$*IX-0V#N5@Z?CGNA^+Z#C"SSEW$:#L+L^C13XM-IW
M(&6<=F^1J*.TW'=10==AWTE,AAN"$2.=, B&.<BJ:B\,*O 8LB5UXK*2648:
M27>#NR,(IK3MUUAGZ;%G\R9;=!P?286@%WN7G[LR)SS+N@ O \;5:>+3M$X@
M955K/&*1S1I%=U&\1*M  P^4M(O#@$06Y>^#"-E"2%P1UW*_\C:X)5Q18Y+[
MV:FX"_@/P[ O<0/?_(,Z9CO]X&4=1&!!BUG?<0&]10ABEH"B1=O8@GJ4"HZ*
M+]B1$^>..QHC/*2IL&4+]Y3U,(\ Q"._J+UHR-LLN%$+F#UDP=V3%C"?,8BB
MS+*$<O%D>39XV,._Z+ P/5XN&2<]TD'(!ST"%+5"QE"/4JF(]W^J3>*M+;'G
M1B16K"S3BCA4Z&8>J$LO'S0FVFALDA]M*1TX!BM$DGBQ4'4'XF!P,R/,2<39
MRM_CV=(,VX++5<1ZY%IB^#R>JH%>L2/%9VVSNG*G1Z)]5;RME->H81?!7DW9
MS8C&Q57EJKK"Y=' (T);[K4MB]_H:6=F+*R\$0U#+\*X$;,.4DG.@5^<OP?.
MK[DS^YM;"H+HOHMN(KGFNK@_D)PIWBY&HPO)H,&C:X_3J )>F-[BA(,]QB&G
MC$8_LJ0$HCE-C[0<MY\W?:$TQM2B0XI*1\0LB)@WM.)HLV3@K(MW8>@@'8L;
MR!O'LG6)#X.:6U@68P<71"KG5,Z7V)'XO0!ACW=B8#K*(4U];>DRR[5%2Z@8
M4Z65;JD1Z:#C8_NR5Z'P5!;-["FGCD!O-JIK.&'A[;8I#O\9:8_.ASV4E@B_
M,\=DAV#9\MKP92E=V[X@TC$I9$OX_3H;B?'XLT$TV%C$(^Q(L7CC_ROF,*!7
M80XAN*H$I_$7=_4H\Y</HE#;;$&5N=0-.H1^8E-K4!,X@>AN&T3W; +13>V%
M;PGF(USRZ!E%+A4"TKP9<>#FY<YUHHA+Y[O*2M<%!C7CY<#-:N#1<&!7A%@/
MQ%"XP+[[+)))"&3?N"F2YG=G[+-(-49PNK@F6D=&3>]W<X2)P9AZMA(TD6H8
M(J:9&31Y?SM0!Q]48$2&1E-,^#4>0$K]56EGCEF+O@G_H \(\95-4CEV%1'&
M08MIL)*13"9B2<9%%1=-,ES\X2%SW\9K.],QA7VW32OK_9.\VH(,&UE0T]@3
M 4=M*(R#LA/\MRMQ&7I-;??9/'!%]6-<@>Q](AL]S02^>]]NEFBM08^<<$P\
M.0LZ:=QW!)/[9\1[I95H2VQC2:XK.X#:/,0X@HQ%"?[MT$@F3D_TM5DB.%5X
M<<FUQF,$%D8%2=M1E(4M;C7'7PN@,9W6,K=(A_[RU@,4'B..;#OBR0Y6D,74
M'IB9BY8><6_C8#!!Q+!17L8]5X-_L'M=]M$!W<OC=BLF5KCE!^A4;'9!,"U+
M"^#I^!5^B#D>A 0V==\JQQ2**TNKI/W1L>-G888]U('-HD)E:UP$S2IRQ-:&
M4BQE6,O?K Y<H?[NMC>( N5$G0JFG4.X)J5M? (,?EN?X?D4UGNIY/1[J/@-
M@P7%@KTRDSZ-%XH+*CP)"^ K7'56-'4E71%^-]6"F?CZ 0S N-YL1:'R4R$E
M<Q77#5,71?J\&K 7C2*KXB]S))P9_+@= W9OH9<R< ;)5T*UB,(LZ,G4C9G;
M*6/U+@]"BG$$<,(CVCD?TMUI/.K=K:BUU$5BN7_VA#_."T)?YDR\UFKM<LD6
MO,9SO Q(G$BH3I&HA6'WMA"[-(TFE.W:%^'81CN'GO;^K2+M9:AHL\Y["$&G
ML8/#$=VE[8=D0[HJ  F6%M<,MM&_!:=#VSE%D>!0#D8?& "=8HBL0EACLBS.
MX(@](N(Z;PJ*MLO];XG_D*!\P&]E6KF$DZP\[O+$T+]JRVS X/0@CT7)_#!N
ME&''=$J]LB=2TRVJ[F%3!\9U&,[/+H%\R[V9B_D$_]EAT80.?*VNE52[^]YK
M3#B+.6SRS/,"?36D7C)&,R;M2?1B.4UF>":5R2K(=TCKM6";. 3)P8>Q)-]]
ME,7[R=?LP+,RKV.GC=-T%H1!/%_:)9"X)W=@AK1CWX5@#S*$A&WUM*^VI<_#
M7I6/A.X3Y,0KF)*AXH?;842M(\0F:E$_DT4C'?M"=&_;G&=1YIH=J>U!V@?M
M6SDZ(Z$"L6P?GBKL5S""6D&C6F\Y8^]19XSI8#]?G,*B+HN:(:%Z;TF*4TL^
M-+XYWRBVQA:D>?H%3]<<=M8'>[QOX;MZYAYG>ZS,]ADQP]/5JY/W&QTKAE!Z
M$"85?2_6''9;H\[E"S2+;1<"Q:#!2&$S%PM+>CPP /(!-?\**3N4MR1LO&4P
M882,3P;NG*18,'0K(\*.+7NMZE(OP;-<LFEO;7]:>/DF&*-]YTLQ9F &X<]H
MABN<#!$EI+J7\(O<5,*3M?U=A4%FY#)/$UOU85J)(J<B9D0I@XBKZ@4,=3;[
MF\)GR'Q8_A!P81R-.-3&C46IK'H0QV:+X-91T(^3G1QIEBI$TPY6^+@:#/&6
M7&P9NN>&<>LMYD)G6L-1A.;1&9;7XICQ/ML]>04)7<)S0O"B0?"4B@-,9$VB
MVRI.1\E+/RTLJN+"&\91U9XVJC4G:WR$:_+V6W_:_=[#:F&])CA!Z-DVRF&G
M.6T%>E%)&5:EU-J9U)]*494%*DFA)=<U\9;VULUM:@_"39_%=*?;7V(=19 X
M1;UZ+-5(>VG6U[3O4SK[MM/9SZ=T]I3.O@4K^V6@%56-9O(;<>0=PTB.2Z?B
M3O5P3S2(DZ;L*7[&?&03);B&.DM>K:UJZ,K)BB94;*LN9*B8%BFUI+/$3IK<
MF#UV8\0*X?YV<\_O T9]38VJ6:2(?Z<%(YM:>@S2F4$NAZD@%4@R=W=*9 3=
M)H)I'<B0*+O-2NZ]Y^6<@*5L4R8"A^51:@)PFY5HD ^D(FQA=I8O^9/A(Z^#
MDCI,5H@):=8EE\=;_RJ4N 5BY'_6_2I39EK?DP+^^+V;-3VF\N$MC^@M+9;,
M^61@@\\+T>SOS9L\QS*[/XANSP(5W_"-X5-53=V9R18&2S(W> )JZH*[$><R
M71@'C0Z?,B]A1]B#P=8ZE2B9I2L9'$O[IG0!/)B7__S^K6\W(\;.-](7Y^T2
M8XXPPF]A,%0L\_"86QE':-S8=:'!9.CQSI<4_>2R4V?[&(TT5<96R.Z,L2#!
MJP*[5%7?MLQY\=@I>$,M:I6FE2]S/+3<AL$G/#=J&E,0 0?EGP-*I7$4)T87
MKB5.,')BM0FEQ(('K8T]?;G)%9OUO%J'&=Y87),K+@55$A@;N-*COS(D)%H+
M%&7O&T])%E+K><V<YOQ8 E=3)R33$*/;HDG!7G'JZ)#W',_A(O61^1D.'&=<
MB]S-A7]FQ4R7IQFQ0VBA+J@.9><40#:A9.F]OM?/N7)04L/1ND3_@OT[YLR0
MPX^G%H2R)2<"%S.5M^@0AMP2='+]6_26+A'-8%(+.?=F)^+][?!CX*U\> E9
M0CC37J?JN9$PE#V4=SXU=!OEJ%(\$'J)>%)2VBC*:LNJ:LZ0#H6KEJ0-MK:3
MKYGAES7A8H#5@?66O?$5(N&Z>OYN'Q$8=T5D/AH#Y>]"-D'HOJPQ9@H;]2VY
M]Q@PT4N6_N3O5]-BC0N*PH$$'V*-&N'OCTW3/@4QF9YU5@Y$E2(C$,*@Z+\2
MG<QV2Z?O,T<?^"5\0'KZZ6B/DM]\.YI=G_5U#5179Z49:P]HC#Y>&D+*@89\
M[2J)0Z?"P85@RI(HPXD=$E?*?A%#6QNY7E<NXT=EQ =D$ $!#4#4CV0M"<$/
MU<7Z%B]<+C$\B;[JCL\AJMG&Z5448*?,S8&?Y8 1FD\9(5H%ZN#;LQI8J\9T
MN1>&-/C9$=:F**'E:$M-]518-H'N4ER?V[".=&!-+>$>KDJ@\A2*L0[437 F
MH@:S:I1ZO/!L8]:!UW>7B* 54&!#UMJ<G>/'J1C7>>VX<[BPB/K8;GB0WZ3@
MZ<Z0HRHG2S?DX//4](1%LR486F(U,7G6V*[B;^BLHL7)3VG5^HF=DC'-'Y/F
M!!9*)R0G0_;WH3X?V#3!:<"O_5@M&*T"BZMARY?,O,=&MV=$]6%HG'%R_ \T
MR@I,663O=0P<X,2:-$42T"&U4YEA"R?8C#D<0^(.ST.YL( H\8$";M;0:S /
MB95VY^&:[J[/V.ZBT3:<@?L @Z$1T>+N@\P[KNC X$N(I3.6.$^^)]\I0\%D
M8]V 4,P19RFD &W(&8+=U=-S.5<AGA9E7&OT/<B8'NW\R(^C\\;*"=PW3)C,
MO26\\W84*PS10-SV=? \NFF)45^*-BEE@:E=5)CG>-P8FQLR#QY,1.D7BLYU
MOF>X:6+D0;^L$WX-G]FI.9024AIGSUQ9G]/#!2"/T06E_0F3S:TZ-2V_[#07
M);J_4>\#,W:?':N$^<A3>V:KSWG"#_R(QTD\O^'J"T>2(P$!OZ7!*-I-LN6/
MINWD1:1CB*0S]DTZVI,]_';-#1:X7-WTF?. 'QL$8JO/-PNW6 E;\Z2] ,$6
MA$]0%^F^P6RQ?*KS^J^J@SO7ANC&Q?[<U9!"P57G_CU$<?CX$J]]E\8]:)S<
M3]C[$+N(>^9\7,_O BX!>Z%-"+JQ/)6Q],DNY/MJ+=2?OM"[+*0C@7"Y:+6'
MQ"Y!&Q!_$EZS,2O4B-&'R&9DJU#&ZI9=):6HE3IP-%];;M M$4<;I9^(NC3&
M0+<ITHHOX-/2[Q%_MTTA2/5,8/E0$4;%7<:#?NK %UTL:'?RGLOC*/2;-4U&
M'BI^LT%WX9*M&D;KAUL7W%(V-YJL:,5P8_D0;%VK'5'O!6IT"=LJ1=#J*U77
MA"&14@*>HM>A,K%4IR7]U;35D?%EZTHFV9(Q"L>O,LL7^>:OEN#FT;M?@6^;
M9S(.Q-$A<JNLYVWJ6[GB=GS78P8&UO.WBAPW/D@Y\]O3B"5[$%A=/FSD='I/
M:ZH\BRSI 0/3+WB?9)[.$Z[43.^7W]XAKXLS7F*X,<,9YVI+$:,6K'D?"/AO
MG\WP@SL+&<H,8_H@ISP C]D)<*Z6K>CMR$1@)&UWDM<(\-$PFG'4C'&.?O7E
M8_,&[ 7A.]5-@[<M0.L-6,U=.\]*1N/'Q)6:=T6+P.1* N+KZKLW<(_]24C%
MK3#S]XUW,U':Y 0P5Q"H\B)LQ+:WH[N:!KY/*C*9A[6>.E7=N@H_>3"ADB94
MTNVUBVW[=N[6G=;^*/'6.5R@@HW0XB?1+A)7(-:%"1:TQ\;@H+IANY%6R[1]
M);=KX$\)0=K(]G.MZ*;$34N6( GJ&T>=4^8EM1,1/\(3* ALP- ;PN<Q,W&!
MP+'=41;O7%DL:VGYM*M-TV"B^B:XTDL$F)\N?0""*F03Y0BPENC"PGEBPA,?
MX!A:KZ:);,0$2F LK9WM\KK6Y<IL PI"O?MXJC#ZX=)24,3ETL>-(W2F$\XY
M-2E+5O#&I=^SOEID9S5S3>[8O\P3;N(6Q+LYR"105$,$9(0J-J2.E!-8\G(_
MO/Z90Z"<C6ZWJ!1>VY(#^\AA%:-O>,2NHN\2Q2'#PM2RF)5I^]4JK RJ++S5
M_(Z M&65$IRMN)9FN&;R-++6^3D&8H,6\48_"JL$=B2QM&)5P I)4/L&9:-R
M-A7&?R24$D7#HK7";4$$!_^F+Q?)JQK]-]QZLY#;O&T#H]Y6L/ARA3Q;4?E!
M/8XA$\GYIPXZ^1%=%^48S/&P5/F"JJ1;"EJC608N3N=.T?M_%*9[E'SC-G5$
MC)+%S0OYO*(1&ZL("K.9JMGU<M/2DA*$YBAY2U4(>!)A'<'2YVHK;IVE\;?6
M">!&D8:1+P!B+$%MBA(ZQL$BP24>(K:64WP )7FY/6,"KB8M=M]$6VGB(V,:
M2UV\Z/U8V5I@\-+7C:GRTT<@NW!GOKXHT7$#:7*$\:-:[U')&L@?AUXW<Y G
M%Y!^?S*2RB^LTY.Y&.[%>!$SV_@Q<U_$_$]+ .XXTYE&?8?'0I_LU@]JSJQH
M>^[?F6./A_0DLV'3E>,;[MA.<*-KFMP;;@FBR*@M.K8ITUYJ JS!MX(N^TJ8
M&B71F6*.IN!4,U:ID*W$+>VHW$=::.&,"M D3!.J_"XA-4\=.H>351]WMA$Y
MWGT0<#=#YS0:ZZBB1V</UXK[<\(QX4;D_G#D/A5N.6 L1M>T_) KSQ,XOT *
M&EB44OO#:='8"QW*?=\ +-(] \ANH&6G$C%--&6!<QS6L77EXKXTL8@\?58E
M'',LJD63*>3267)*[3P%!P>N;Z9]9JZPB!77INPMS].+F,(K=TBZT%@^C9B'
MR,>DN <'65E,$#"",_&\KGK+21,]I1>+:%N%3HW[^8T37^#)P,LB,N\B"<%O
MJ5S@U1%%PX.@D$H5!JT03 P92?FMB'?0"$5$ZJ:+Y=>D;DQY86,RGMJBBUNW
M\H,,^4#47S?B.I"0U58!+]7L"AK;C%2A'X9C&&_>+:8N/(DC*^=MY3&M'XF3
M,J#O(!:..HGC!_:)ZE[@7:_/<+#N7'G?/U]6]BJ=OCJO%QDZLMN#W=:^/C"X
MJQ_!'N[.[]I1*.90LE !Z[N4OA,?'^*V\W8?I5T\)R,I6M)0Y!RA[E:-)!7N
MH?-739>AF M%D]]'U-%FY!&?3W2.!GWJIAR?('D&?45,NQ.MNT==Y2,%K9@Y
M0^ZD)LZNQO=)U#9["K]4/C>&53=D S51*":#-<V=!8 2[$A:6V/FR3<!2X6:
MBL_F7!8[*D Q'%5XV>RA#OLA9"%'4O-^ OO3:O)XQP5T1%PR]ERL$*K&9ZME
M$#'Z#L3K9;)4W*6!HQKOR2VEULF=KVH'@_3,:5:,GD)Q+<YERBIRSBAH>+VO
M<:AL?=/)5:LOE,Y31A5SI&RL$F03G<VR8_2.TK$WGH(I2UC#DX?C/-_)P(ID
MBU\Y';B:AIP+>%'E3N%0.JER6F1@,<'B"91T6WOX*B8J/J.)ILF?=:%%\U0R
M59K;C5O KUQ>>+QMNR[*,CX:I5.(^3+[#XP.B\:DU2)Q96;HSW*\(_@O6PLX
MTFQ0;V1SJ+FC-I+,.2+%8W>!" #^[$%M<AZ;Z_#D95FH#B);!K_J\HB^;6S<
M4G/I%8%1 2&.%/%?Q.O&$3;VX=$'ZI9"RF6,I^"H\I^YR\N\&Y@&U =PC&HO
M!M8KE)I@U:T4C$H707$)L&'NK^!*@+)+MQ[7^ODNL];0,2G7C&];K>9@P%/O
MC#;8IH74])?[^1)4?^G$%=@H5,*2>0R66TC\/-(Q3OV;B],FXN-03"JOS=2Y
MDO%K?0',HV^5:MK[1!-"^C,BI'=Y?.IZLH_B8SU7DP/?"EZ[K_FV<N2R;(7P
M4J\9!PB-+*_7'8914'0;88(1Y4X8SKS6B$]JA[9HLI7#\(^45@0<[ZKP+M@\
M:V;P4U[4[^&92#^*T&9G$9:D=N^=-N"=P^70.@KYZS/:K_2FLT=)0U)F:(@"
M]= :;E2Z8G H#:#+WCOVQSW<9(TE&,0[9*H]\#01N\W<T!9J#3=F_XDCAMI_
M$?]G*[<+''U#JS6(P5^AX$+N;U3RBL=:.*<%%G9%XX5"#?^=&H1,/,5T$E<1
M(6'7L4!RC<D23ZBR+YY1_FX87O%)%@JV,<$S+ :2.)JHT#".8L]"9SH!ZDUZ
MFFD+6%24BD[WD6-AHD@9>#N+AT]>*PYC9X3EHL-8M#:KPJ>1UHD15B0_IB5]
M'=D/HQ>L"63;J9YF5#@%FPHV.I5,K;#NR$= P=B"\RS%/@Q#"J[8+FJI=4:=
M<38FY$2=GT*^@:L<QF^%PU3-KST9V[#16MY@L22'[;2HB2+$*"4(%A>#ATSZ
MV$0];>I^31N9;GT[E:YLQ,3*FDAL&9,H9U%J<._Y5O!@N5%<&7X2,YC"#@$'
M9%G,"BI,UW<8UKF=$V7V%S0#X^E(SVCF[ M%@T,XVS"'LRWR(3$,'U=8O4;9
MQ@<8>F%NM?X.'47G%_16,'T0<\<E=PQBP,'+<HO"'-*>C/9WD/O::@@B5H/+
MIBTE782_L$J@;N)<E.AJZXM/2+I;1M(=3TBZ"4EW&W43BKI>"!H&+F13WJ/*
M:TZ@=,,'LI%6RI0>%:8:7\3DU4'*O(UM)RDK8C5DYSGKM+!1+*A!@?F,JY*C
M6$7+]/*PHETO[BN74=5-H(\O6A@RAN]SS;$223S?E!<$C;%H\K"-C4&GFW2'
M1)!+1O"PW$0$J;:-B6PJ7TA]?UA('2A&_95#_J&6KK']()T(\/44V/*-OYB<
MLVJU<$8^01G:V@-WAN:!?PYW.J5L+2&JU/()[S=\"XVKFU/L0Z&QEE^XS$&X
M94VNGBE,Q]8J!$_ &GC/H 5':'B*]<'-C\Q,IU7(*VM D]P:;K%%? ]IL"+,
M>:((%!HDO2=YL!7YU8X(4NA(LOM4BHFA0=<M @BR=_",CK7#W?7BR$"R)*E*
MU3?@8[6%AK+ JZMH).09@M<OB[6&F2[245$*7$$,RMN_H_[2SGG+@1ST^QV:
M;^F@-Z@NYW;/-5^S-MZ)F!B9D']ER%.6$F=S'O8;,^($S6#I6A0E\4#[_N1O
MOWM%,<29*PN'O'C$E5NY^Y0A]?P/5$&+W:2060U,RPP/Y,RP1.Q0SC#CNBY)
M7WCZ6*R?E;B%GD/+]DQ]?)@AC7F+N8'TB$ <):\KB</J5\F)R9*WBL(\?O@M
M4: CX;>=L_<1,&DHUX$^PY<5-7@%2[*A:7LWKJY$G:5\*)((U,-_L J/ZX%%
MMZ0&..7ES2PL%[*!15VW'LZ.5%T:_M*. &C'ZTHN(B$4Y=?VIZ=X%RJM.%.A
M#1[CYQVA(:D>RAQ8PUX^!6X_XX6MQE'@!1_R[NVZF"ZRI;A5EDGVF3X"T>V:
MVGO7G 8E6_KN[0^>!4I)=3@Q41+!I\@>XJ;X2&@L=<NN:YU[QQSNPKH!CR9C
M3QC=!:#NSXMD'(6?W!<!TQ$/-J)52"84L@4OL B^75&#=,N<'(1-Z,_ZBEU+
M_T%C;CFPL<N>)?#G5>YE.>K:ID?!_M3. 3E'O!'@=\GR-FJLC\C .8GE9R&!
M&PP@PMTI.P[CP-U;(=/GJ3#+%9*\).L,EJ+.V0@C;L)\P#TH+S4,ZCG":HMV
MZ6R_-4;N56@E5=2_E-%M%\TLY5J/#[Z*(P"DCUZF!OE(^M<"'P^"YN#JGNAK
M:Q\6K;3/C1LH#ZPDX?D5B/69=@:;@Z6*H>_\SVPN30!B%.^!^WFOQ\HI,J+9
MGC./,#O*_)E_A87%^G!J.@?.#&5I8'\>$FV?>D%2&<)IC!W?]STWF'P$"_$%
MI8L AR[*@#'7'04GZ,SZOIPQG3,1ZE%)1*L7"/V+6)Z(^H0&094R_O>BY+4X
MG/ 3:$6F] V)*G,(51->97;.0^@KPVE8SWQ 6%4PZ]R"<,'T1I""!B.[#39$
MF8/^-$_DG(X^K^4N9:[* F]3-!])P=*X7S:K#1ANS9JF\QUF@MS.1<@;;$.1
MC]$GFM9HY]JOAO$TY.J8_H(+0:,33@<?B/]84HG-L/F0;'0NJ3 N0S"]!FFI
M7M75*48.^!XDV5K[BC[3R6-!L 7IVN9?'-);ERR:8@^T;""G%H@Z&8)NX!46
MWN\T 8@9"R;4$:,)!U*68R]1%YW;(*XPX44R!SLVP\H]X^:?H55>MJ'!!O-K
M52UZF1Z')?T1"89^C>OB;L9FIP3#;2083J8$PQ>18.!9)D7^OW]#BID_CF=_
M]!4&[DHPF_^@!EQ_H/6-WL)^,%PQ)O4;Y-G5<7X4S/?&&U7"DF$PA)9LE]*5
M'<'5_X(MQ7_5U5Z&=V[I*,W_F&]FZ"[/>RRMW*?CLT<'YM51\LHNTR&XM;O6
M IGYDI_C3(ETOMVY+H?C=-)I8O"GR28IW631$MOM:9-UVC#%-N=@S"AUQ4/>
MA[5G8J=,3-%&+=@5@!\RAT7%W\OF3=VR[QE:EM9PZ*E0GY,QJ[K"_G\<4$U'
MVI3"P!L&W6&5@3A]<VXNDHWP'43G0^.TZ!'Q6PNI:\ZHBR"QY#-Y/"4UQB=.
MR"'R'$U[>E[@4,E&(40*E:RX<;KE+AP&BD,2@AYS/^NZ;/[NT(,EL,H:9B+B
MDDJ3S._E']$580*"72W[F1*R"TM 5,A2$?_40U<EVXKY9<H/1<_4<A>!^-)3
M&&7)$*T&'&YDY^AU?_D+1(#1SK.U\QE&_TC%A\9Q;>FA0*,6FD!Y0U*YCKK&
M<WX]7U,QBYP3PB>?]24"YC0XYP+>=^W@RWP4]/?[:%,<ACBC&J8@1X:TYT-)
M$]1ZZ-TZI]*IBG/IH1?Q0.;+K%LPA4Q>SWMAXH]X5ZD34,YDR$C#TK=$ "+=
MCF.L 06C*BWA55U,>920]8P%?$R,\0NG5$8M?!N<'&(T,G\?#W0IA5V"6E95
M2G+;%'4N 2U_OC12B U_,;35K[DG'14A\]D,>'98F4IO*%C6>5/,).Y)"T+%
MR>>.VC/1I>76>"O 6@:=8;0"+Q/WL67,R?;VT0#L<H07>87DN4)2I81TW!6#
M^4(8+W6J=9I:E^:$!4O>8(K-M,!V,[A'$!!A*J>0V%C;78R!2@_L)/X^TJ&Y
MPRAA)]9 5<,,]1?C&^UY0I#HPE2#K4%RAZ<T?(=>B]%.2RBA@.$>;I9_U1WN
MI&^^4U]FNT5I0"HD].V@F4/H+*0"Q1+APLSQ(8H]1='4K3'""*U\1[ B45N;
M= <ZNK;]9GQ]X-Y6&I,W\3UG"_>HG/CE)806;-]BDTJDD"---6K0'$0"=-=R
M_N#!$H>M!E]OF1-#'4,ETW*PS75&"4LIZH5GO/*@+':_&RHT/SY^@75MB%0B
M^_-7-U]6,"\L@*.6/K"^!7B*V NJ:/7B]B19?%^JB4)C4IWCBW19VG=+.1O?
MA+IP"A]1C8C8+[[HZ4=5C1Y^&56$[U+GUN QRX:UD&3&@ $'AMA:^\BG(Q;<
MB%JG=*O:+(3IV%<%N2/<\OD5)I'QP*WL*#]*9MO)4\964PLB]*<,A 66&#DT
ML#H>7#-G47Y>\@HCRT,,;>=EV_MYZ6"?+_C*0 1293,G4%#TD'#)1B@?7S$>
M#=*\@?G](L<A'.:!CZ!,$F%I_!*8NM%06'_HMB2EZ,T!'M%E1(Z7;6"B]_-L
M$VN*$770VAZ/N!TOP=[J*"]2=-@/E*S(NN*JVA">(M%EUK?A-T8&9?0B&YB6
MKWZ'' V'&6S!,"</8C4]Q4/T1>,R&A1+!XZ.U^W!Z"6"??A8Q5T#*4LO@"3*
MXH+%K42>4=_#L74M6FX$5)G*V^%:*<,^D<"!FR5-^A!6$P_"N^Q9Y4.EQE8/
MP1P/D#PS=;Q<Q8AN:AM%"<W$(U>/O=U6$4)> 02-1!Z!4R) ;FV-,"ZV$I$6
MV%QRNT?#4QVN2D13+*CVP1([3G;F8O%[P- .8?+QNI2=UZ):]UWX5BZ=387X
M,'H5Z:>N:)G"%ALR+!:X(\-HJXFSLJV *_.!L=9/K+-"SNOA'^2G_R&MF[%*
M8#_L97(]'AXEU!]IC[)?V+1*5^JP+R'/#?E4H4O?>U_[+=)^><0R[>4SAI!M
M=07C.)&1OR'VFD #O2T=_/G-VW\G/WF]8G)"\$WU"_($06CP]AEJB07\O*>U
M"[=VUA_]@=7F?S!AUA\&2[]')_[14?(SEL2_S19[=.B1Y^[;L%Z'?>[_Q;A)
MB?/>K1-U-\%E$T+R-A"2#R>$Y!>!D%0AHHL/HV%_%,5^W'!O7O[RZQ[=:LF/
M/WYVF^3Q']RCZ0\P#O] BC2,-H'9^ <W\?W#_=7OQ]YQAUNP3KBE%-JRO_CA
M^O##*VX]_-U?/47C?I'(QMMEMD?[[BNJ?\;R?R'I_[%M>_C5&VU@3_4E-(WD
M+7O Q:$;/J^'O:7!X1#""XF/_"MK\^ROY =N OG6E9B_9(E)0]> I-VL8"^5
M&?>''[__40G DY==\KV;-7W6;!*LZS]Y</)(ZVFH:N7Q2<+'A%I"*4?'2,]T
MCT.H'9..*D7AS%4.JVQ@A/KU>P0L>U?5YQ5&?0)EKW.=?LC7]9XOD9-+6ZO#
MD)0=8)95&#Z:-?4[IRVDN/HE)&%-&>QAYP.G\W8EGM)%79;U.?,=8A 9>V9E
M7#9'Q5)V^:*S:?IL86+.:9LM1XUKMQ@T;B:A<&W+;,<ZWZJ'(0O,;Q:C%%^-
M-BH,%O]Z'QR,N@='H7CO\A?\Y.,'#XX>_..%? $DH\S6K?NZ16P37'[P-G@X
M/-W;T6=%6S!L\&O]M'P(/I7[J=/#'SX\>OSHZ3_$QA[YP/%U_W9\]/C!R76_
M?/3LT76_^N#H^<FUWWO=OST^>O+HX;4G^_#9]=][_.1J[_V?_^Z:H:"(P_0<
MA'R6S=^=4F>D^Z)[%O1_X[KG'&21/;6OV5_#7XS(&-(@(=Y/#B&<X!T>V//;
M=L ^P*OJ\LOFQ2.YXU.#;<>__._?3OYV\31'PPF?<.)$%_39-G6:[9V>[235
MTVR_O-EZJ7YRB53[T*=&J=?(LEX6>:*^Q<@-\PE7YN/BS]9#W%D\V3<-@C/>
M2!'<Y6$AG-#]1T?@>\,D/]0]?7+TX"%\39GDOB:H37'F=H[OWO%7UQ/BN[&5
M-R3EMV"M;J_63>W#73]";ZA.Y\:EE+?HP<.[+)<?9E-\^:+R:XV,P/_2KO7_
M,VO^^_][2X%+^E&#;U?AH_ABU/!=%^_I?$_GV[/92^-6.LS8"(=_R@JJY@S'
M??_.]\ETOJ?S/9WO:]_?/G&6TR\S^$764&G#&^E%0+]_655U3Z6VXG"UT[&;
MCMUT["ZY5@/C:_(MINB:Y-]9V1/1IAP_JMC^.=LD_\]UR3<N',?D-P]SD"-'
M!_$>%:[7?8L4#M/==P,AA3F<NL7\RKFNT6'N10+L"I*[$Y$S[VJ\&HZQ"$=3
M^9<)UU56XHM(F8T\LJKW:K8W-[%+-G(O0NP?(>@$,#R9MOJN;/5A'>-8L'=-
M\^]?VB9/Y_DVSO-T!W\A&SF=V8/9ZNG,3A?N='@_]^&]-DKAD$,*_ZK/N#*
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
M/$MQ\/HT#3VJ$!\/&$>B9PJL!&>B?Z!I^J3\QE]13407PXH[CX&BK]H)T:U
M^&(E#;A&LAJJ67K/GL>U86^X#M=\ZJ649)0]!_ $#@?6)Q#K=O6<^GKQ%J+$
MJ_D9]35\&,#6&X?19S.2SN[8P6L O4EVZ\)"HC"F2RA2@<?J68A^Q\:9^@+L
MX:#OF,[0'-BZ;EF#:NMAC*O7& 36;)D?JSDHQ7\-KL5@:'WQJ<?:WSS^(8JD
M@'MI1B(E"0!#Z$.8Y!F@2$J]Y#Z&I_OL"L1.0*\\8DZD($TFRHS=G"51/D-T
MA-N1Y_SRVY=_*)_"68@XF\0<#8MW9)ROK49$G#-?39M?@9##GC-<C9#6M2'D
MP!@.#5L?C0:VX1C&;O@X-,T+P<?'%)^=! %B%%%>&F9-OL9)[.5I"E=C=D4E
M DF64?9OXH5,4#Z&LS'#4+@DFZ6YQW"TN#Y3LMQE<A?$*UZU@+4J,E>)E!(I
M<:%O%&\,1T$1'U^:>D\OL;&!(7ZALUE$40M3WMRGE/^&DOK79$9K'S$;#O T
MC $#&;+^?SFH<6/X +$TIAQA2S3>S&B?AZ[KA?K5H6N7A/JG!(1L*;11I41T
M"<(TF^%?LR?M@8Y#+X+OF'U0F""S,9DQ/1%X(VPZGH4D A'M)9-I1&<,5QDJ
M!O XP,K_Y  7FG(UE57H>!Z=XG7N$^>\ ,UD E>(^S+0*."RVGV6*I%6(NT:
MI!4H<QBLY5;6(UC.<),73D%OJ'"6(S.)/<;VV0/8:^%IOY 4^#0\P-Y!39 H
MW#D4AK\W8V^%K]NPT@9D7B7_=_/R#,[<R;/J#+Y0RC4MFQU @& "  %Z  @S
MH3TA!!?4L5)#&VZX;Z,>QAZU2A.4+KC5+75.[H4[_ *VA\L)H5$[DF9WY$NK
MWQO->R&MGE%^P)IAO$+J$*SP=9-C\K[A+=)'*<7J,CZ^9<9WQJQOJ^X+2FG$
M7#W"A4, CQB3A>^$T[)P:^[CP%05J>!)3&28* )IPAW$,=*LXB]UA$1<]$B&
M'DKX)XQY%(;'[1K">8WQ.FD<2\3CB/=S$OG(M1"9.-KI-0F\P =GCPGC89DP
M+GC I8SKA!S5IB!Y*==L$2=K[O!&'BCM7(F-]2#-%-8<@G#-P61)-8P5@K1]
M8B(4?AE3X@MD%2D,B)C\6I"U4?A?4I>X*(/SU*/EU5'RJ#PFZ9_*&#X'IIF)
MRR8DC)$.A/6<%9D8H# RZF F]!I?>+=L83RG0O(@V3>IW(QW8&H!0+U4\*4.
M+DE^&946]&MOE5I>X)947R3VK,2>Z095ND0BIIU(3)*8Q$/Q\9Q$J[2*S1H(
MJ7+AX,Z]M(M5^-@M]:)TM9MK7.;,U!"T'DZF+/6F/5_[2G?Z:F@?OA2Q%8?T
M0O7  K=CQ.N'*4\2N87SSB?Q/,>;$A]-QG(KO7[(WR=*9?D'C5R!QOZ=FWS'
M/< 3;MTD10J#3U8DW2^%)\S=,;JJ;3@^0EOS31$*JAZ75<93<D]Y!;%& ECF
M+8D>R5-V]^*'Q0,JH,\PKAGT^T#X,I%X7T9Y36&OK1O;'I\,RBJ,S8M<&2#J
MF?/Q(;NR#^:#0?@7+#Y#Q1"$;$U( \<WG9[UJK?-.K@++&.^ WI?7OL09@GH
M! %%S^M";FBCFPM@ZHW9'ICL>5B;/M)32A'8GB0[P7G+F/36[=S.H$)IW>J:
MR;$@$NXWMN8H,Z(9\Q/'^)6QJI*$OW,]T:]T&IT>HZ6_JFMV8CUFW%">9ZX2
M1HM"@L?GZN$3C^09S\OZ.4_3T",Q53[Z!"6/FT=_HMV9E2E K8=ADB# .@?A
M?8?'N$_2S2:1GB/]+Z!VT"@"C 044[B 4-AA,98-!S3&N65AXF>;71AG*>D?
MN0'E)I%_&-'_-DFG28J)P.]"4!Z!YA9$":O?;J(KDL^2.V'(X=+1KH.MX^4:
M($:2 U:%WZE_QU\[TGN ->)ZV'Y$IAF]S2A0-KR] "$KPN>/?K'8\@J7YX91
M.'NZ+>Z_:VAFQ=[6'_;ZAOE*&*H-%Q@]RU[W];KO]![0QZXW7_5[=^Y4UD0
MV[8OV]@^HO !'+!]0K,7YP"=0<ZE-\1!QD8-7JS?9NDV*CQ\TYD"9F;H*P4G
M/8=3WX6WKX+<ORA),^4]F*2^\HYZ=.*"66(9ZFYH<AGP.QK5K $'YTNZ=2V4
M96Z@K',X]S;IY@-Y *T&5)&_NND//][\$0?%!QO;3YTO@$X]F$T*:2FD-[.2
MRQ R;3(;= U*@2P%LJ2B/:G(E%0DJ4A2T3Y4]'9,XON-0V(O&5JGTH+EW*_&
M9I$W- KA<A:NR=KL[7O9+*KAD1?9W?6E[.A;PN+&4 VCHPU])1%?\(E*(JX1
M\6"XT<RX^ .7)'QM)RI)N$;"MN5<_8%O/0E,^NNEO_[20W]'.]-.;58B\/6=
M::<V*Q'X^L[TBC8K7<@[*._%X!?I-[YJ\T7:J])O+(GXPD]4$K'T&TL2ON@3
ME20L_<9[I'QWV5+A;>&G:0(?2[YX,632WL:NG!VRSAZF/&I)LR??K:192;.2
M9N5!2IJ]DJ.6H9%=#(ZM>R1*]GB%---1]NBHIC.0!RTI]M2[E12[-<7:]B7'
M0B3%2HKM%L4:_6Y)6!GOV %)UO19ECSQBHFEHSSQQAS)G"Q)N>>S6TFY6YZT
M;0SE,4MZ/?5N);UN>=)#O5OT*H,?NU@?4XJQCOB>S>N5;/"*Z:.C;/!FJ(Y&
ME^R'D2:'I-VNTJZC.OW1!9^TI%U)NQVE76>PL3OW51US87[ 3QQXP'[M_(C+
M*Y\_ZRQ,N80/[!WFSQH]YY4<S'H^6'MM@UG%B+ZFN:SS,UM7(.^*P:S-\UCA
ML4HXF9(PG<!Z%8]-R%P>D+DP !.G6.: :6GTA/3!A)&6!%H.KX-KQ=9P5J57
MCLY+@B#TJ!(A&;$%YQ$CKB!-)D!A6>ZRKQ22IMB=FRV'O8S Z\+4UW"\Y5-O
M%?:O1O7+'(N.FZL-E62S)_TPQ4-.8ISMET_B^8&=Q73Y8BO- ^8;AUK2V-]K
M\KQA[LY-]FOWOA_4%TI=BW&7X](C.27WE'L;-1+ ,F])]$B>,C'*KWY !?09
MQC6#?A\(7R827_D$T55P^!3^)P_]</;$F/9;,D4)IOQ.,^"('LV>S\(N#S3;
MB^\W#R2,V/S4$FRGT'#8Y<=6<E8J#3@#FDGJ)T4@#<KDJ,*KE'+Q2K*QROY5
M*'SW0")X )\TG7ECZN<1B.P)F>5I. OY0[)QDLXTX&43T#0>:#9#29OUE#>S
MN>&)3#%1U[Q$7?$D]G(0[[,T]%!A8/?-$D "^..E/>R-*K6%X SB*$H>,]20
M0,XG>0:W9Z]O%U"@K0&[SE$'[,+;UL^$[8UV'3?;[SG.N4R;798VY]"Y\*K;
M,AY^<RV.#SH%*-H<%S3'%MFLS$,.L[M@Q#F'F/Z9! ^>!=&W*")1;"[*6!EI
MN!@7M.PT]5RLMQS5&%YRJ%^67!R%.WYI-C,VNW1Q$YH-*K@!&]M@J@UZN@57
M39,L9 ZVE$8LIK"F7ZF, ^]*JJ=6@DX:*7[6 ,F+9.R.:EKM19.O UD.K1K7
M76/,[;0C\ZG[5BJ7F'BP?G?VPJ+R)JYSC35*%,G.KUCSZJB.;0]46[_DE+S+
MU+'/Q I]%JK\/N^RE]RPT_J*5&Y7@,Q0[6%?(HM4;D_ HK]B%+6%<*SD[:V0
MJ]DSD5[]!%/73DBPQW<];P.'2V?T]E!U'/O*4:?EQ/F%%$2C2']I(:5MI:2<
M3]H8&3UG^&J+1)Y-_N #Y7'611"F,+V:S^&L@0?=T8W)FMF,I+,[MCD-]C#)
M;EV2T2B,Z1+0JE5:/0O3I5I.<!IM#26K9P\'?<=TAN; UG7+&E0[#V-<O,8
ML&;'<S[W&DA%QHNN+S[Q2%N;1X"/L1?E/ESZ1^]+3_F*50-YBJE7+)<Y 2P-
M8Q#B\SE9 :99S1(E"[\K$WC4.*ORG#&#LB&/LE.Y<*3TZE4I<&'&$M>94N,^
M8>9Z?$\Q>Y[EK($F^2=FEWLB^1*U()[+QO]FR?'PG#REH!W!,U,J\N ^1+DW
MR_G(17S:PI-4]J@0%"LOF4R3F.M>F(\7)S,EC_,LA\>+5;AY!GB8<24,KZFO
M&)/H$32(  E+^$O^33VAL>&7$\ &\1VJT%%RWU,^-^P-((&Y\:&71R2-GI9>
M,L,9DO?XJ!B@+5ZCD$>2^H5Z&+'<_BEYXCHC+)_X#R3VV.*F- V2E#T#7ZV6
M"\QR-P/88:8^\<8A?>!9^W"+BQE^<#V<-*B> "5 \W*'^/,^1; D<;6S?R[O
MBD194NV&S' E8>)CNOKRWA!C4K@2=N-1T(H!6_",HHBGS(LS\#RP0V8(L">&
M3^66DWCN$%;6&72&[E;G@R[B'RNN&H+@G:M5"3DC7,CY9">UMP&C*B_[O4']
MF:SJ)%/&-/)9[4D&#^5%7D;/F'MYGJ:(I#YU9SWE_7=<)-_,<Q:E+J]HY0KJ
M;VP&(&D -8>J,:HJ@#C=P0%E88:O9?0\J_!>+$!<Q#^+0L*2586<B>D]KY1[
M:?:&Q7/OFDF'@WU&0%R)BB!K4"WFCD$CGB7IDPI$0Z<D+,N3^+T)*T(2B\+;
M1]5!W#42HXJ?I#EM?-#"3EZ:5K48D+/ "BI^7'#-13C?T",?]^OFHRW*O<2)
M5I(KR[VQ0B8<*CXH"+!23G>/-*7'3Y<>'35=VA[U3'MMNO1@;3;UNN\ 6W:]
M]6K?>H34\/-(!3^2&^D:MU:F@0_V3@-O6/75I(4?*AG\'&!V-$I9 P[.>73K
M6JAI4U%%I\[]BC9[1B+UBJ#:&2&[?ZW5.9QZFT+VD)56YP"KLQ*NUP8025?K
MZ&KC=*)+AI6D*TE7IZ"KM\R9UUYQ4G/[C>=7*UD;JY4N^02OJ'[YXLKSWL['
M'V1NV<7DULN2Y>?BNJD.K6Y54TC2/<N#E*3[['1.U9&D*TGW]+N5I/M\J6OH
MESR%\#)K&"_7$*FG"LDN(1?+FJ^C-DX64JXBC;YJ#]MCZ^>(+<>?)W/]*137
M@!>2B[0Y<\IH<5[<.6*+Y"*2BT@N<N Q]^K0E%QD!1<YR_8.B^;II?=V**Q7
M5@=2%,CQ,4&GMF%-:<->L[.IHUY%Y/F6<<$G+:>52MKM*NU:JM4?7O!)2]J5
MM-M5VAVT:&E=%.7*J-X^4;V5O0F8D20YY<50D.246YZT-5#-D2-/6I+LJ7<K
M27;+DS9'JFU>LF$B25:2;+=(]F:@.L..^@%EP=,."//;0K<SM6J%5NM75K0!
MDU51%T9.DG%N>=(C51]<LB='JCJ28KM%L8ZJ#]OK:'_%!RTI]DH.\M(I]F8T
MVMBFY8S/609+CCS]<L>.RI)U7E&FI\P+;C%'S%(MO3T.?([H(LL+)!N1;.3
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
MPI6K_XN1C'71AIKFHSXGW&#)<(-$[BW<1,UVZ=[AADKQ;0XW/-\#U+9JODU
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
MH-S+]1% _AUE9.,ZQ%M.6*)MVV>$U:?G4J-O0AWY%L;?_# C1<0]^X8.W6^
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
M9:2K-F$/=IE'\S-T:G/=6'/-8KA3;:1.\4BVJ8ZW6OQG?;A4A6"KC@J;<?J
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
M"Q3LTR9Y(7P><:-'F?T-"S*EOU/)ZT9K.&(@>>\["%6^%X&7K$V"G-=%;X)
M]WQMNAULHYUW=.'&[=/TJIK%=$%M]G:P;ZQ?@[$^^C13/I^>!MK_IA\HCLJO
MZ*HT<$XOWOR12F>9YT-*C01[UTG@PUPBBUF>.:X,)<_6&[6R<T);^.<9O(R
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
M^ KT.*-B? W7+<*LT\NE,[0ZO-9Q==DU)1UKT)^&D03BH4/Z#*.@('> *HT
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
MI# "'XCVH )4L@ ,Q10$YU2R]ZPG#WM"XINP)X9<')FON*!>0;V">N746>-
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
M?#7\=-/IS'_*2S"=-3?L%!]T FK;2;!5[*9S]F'G(7-Q1KGX5@SGVD/N/<W
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
M:I%^FS3' X&$Z&>KCCZ#!('""$T94#B]2@$Y4$$; "V6E$B#(-KJ@7RG-_]
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
MC8>=7IGXD ?6GF6%KI#?V:"?+8UAQ=T[3XD-B2L:.*+66L0= <AU8.!*+J@
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
M77C<UE'MOC*#8%UE1K4\'B\S9)49.\(I56;<$#IWBFI+$XHLY%8Z>=I" G%
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
M2I*5N*VFZNF$]QYM<MUM[@[?,XS5=*N*:O5 =PK5.+?,4<Z08E$C3A1#AJ2
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
M[*F@W'H@[LO,H()+PBB!6,H9*8X'9!75B"3/DHF::+SD8:G,L(7,<#E"/TF
MS/+WOA6&+T=G^]3O?4/'((V;F0%05+9==G[\672LK)9T\^YD726K3Y/=*>F.
M,^WDTJY-]90V'31K3V#]MU8X_'+:&8UBG*8^MCK/J3UOO@UL;]1X.SQ!;:)M
MANWXW^/.Z'SZ0>O%SH;]LI98\GS[/333Y\)4B=IK+O(_LUL#+,VL'@VSP5=
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
MM\'DJJ,$6[??DK"$<0D&$@>%@*58(J[S#'0!QJ0V*<LH7=[O7%*>ID0@,,U
M?Z!<@*%E8S#)!,-&Q4EF5]QT77I4>R)P_?8[)OHP*+\>Y#DPM?OK=[CBI&SX
M:F^3I\BWE'X<I6P=C3"2Y;E()!*I!"N#I2F2.HD1U1F-,Y6#HAEO A,"C=RN
MT,"BX]6)D9$LS'SMW;42Z2;'Y/U]-53%.>&Y0   $DQ8DH 8@4UG1MF8NPP[
MLI'C0,?ZS)K)P+86B5JFD2_3;&1OH^P-S=(WOSNU<<\M(2@A)TZ=N\5)U-U*
MDK@R_@X*X_FY.U;GSL>W2S15<^:4R[FB)RND]M.BIN-DG].GI3MN[LI!UF\>
M,(_G-FOY<+D<2]T*N]:.C>&V)@0@)^.R:\;HQN,2OV &[G(TD)?E9 RO^&;-
MV^9U/.['/W;7 T4,Y*BV;VH+JCTP_V+O1O_H'V:M)L?3=#67B=!HX&^Z9\Q=
MN-"=LW'=Q_V$IS^Z=+:K+\)]S&^ZY*;?@:]2>M^']-,;AWK3[[2?Q?<?QTM>
MC_G&IO.DUR8[NG:*KF[Y:04VHT$MMC5MI]=CF_.?-RF6;YI$2_?%%52[OH'L
MFDZN#]@L=GWZX -UMUX_X>??O!OHPOWJ-;=KIWIE.]MU?:J?;/?ODCQZ=0$3
M0N].&L]CO1Z56ZY9D@:78AHX:MLH9,,<10)'W9J<@H1_>LS:(3PB 8^6SWSX
M,-=_J.KUSV"+-\'7@$]!X@<.VQ2'_>&OL09Y)MN#99&GUG_V)W'1>SEN_OS@
M I"NI4GSYV=7)LOQ8V#'P(Z!'8/ "QP6..PY<%@0>%MN'VO@P5Q_ERF\=LA+
M>P K]02,?8],!!=%[$7*PNM\9Y(F+;(HS6T(\#8KLC,&])K'#LNMFO%F)W?#
MAJ[E\(>,,/M8Z_*4%Q=VXQDY<8IY@FV*=$8U8BQ12)(\03)+I-3<,IZN9.0P
M0@C5N41)PI*V_+=O[:B$C@W)2:KBC1V*.?#UY0Z'];B:^./IG]QY]Y,S.?SD
M*[G5'\NARZ^T;3&D>]<\XI3W2'IU3<K .@$+MV'&BU!P8VW; (K?D;J<*DUX
M0I%,M#L 8PB2B@O B#@UG*66I*MUW[83%#LUO570O6[N5'.GE7NE?#'#T;5<
M,SZ?O?Z4[_F,//G>Y?54M1_)-/\Q_IYC-*Q/6<#3@*=A0U\4C*:"T(1RCD"5
MQ(AIG" NF4 JM4QK+6BF5LJ8QVF.*4XSE%CKH)=G2,9<(F[RG!&FI$EO>0)D
M*W5+1GI)P@,6!BS<Z@T-NN6#@2).!>.N/S"-?6^'!".5$8.LD#@G5L0FRY\)
M*&Z);LF"K7YW+W&71?4=7N+YTRN>%>_B-IX_N# KE]H^-7[[%##W7<S]2W,L
M/,BV%\)<0:1=<_(WDPQSS!'-TMQ5#B%(4.:Z%UF2&]>Y"Z^T@[2QS%QC+R0Y
MM6 ;Q!9)1>"35;E-8TYQ_(CN$L_-]>&PJ;IT;S4_2>*>N*:A>N"< (7;,.,
MA1O7[A/I0F8,9493Q 13B&=QAA1G+)5I;)/5TEO;#(6/I.+_3(,6'^ R;.A+
M@\N$Y5IP@1%3KDQSKC,DTT0AK2R.":B45*W4"(IU(HQKZ95A(A'+M$**&('2
MC"=9G%L*#WRVFB-+:2^]INA<X)P A=LPXP"%FX9"+6*I-4D1EGGF2B,!K&'0
M'"6.I4GA?S*VSPD*M\0Y3$+BP=V=PW=((0[.87C.7WUX)(BU%\);SUJL?5<M
M,+_V5ZS1J^N+#3Z,T%2:8&L4$DP+$)J"(FE%C!B-E9#4&DS8=KM;&JC8G/W
M: _'5[=K?:9\>;M\A)\"XCZ[G7V!B/O F,A5GFN7=6?RS""&4XEXG.8(I[G"
M(C6QR+;<!;V(B8_E@@9;X>HBK8&[ EQNPXQ?(%P^:P75<HU%IA*$J0$XS15'
MRJ:)JV.L-2=)QM/55CQ;Y=79M((:TUZ2B%T#VJ"@!L3=&<1]Z"/'-$DT2RQ*
M<Z(1XRI#0J8$Q41I3/(\EGHU WJ+,7%+/-ULYZS^D :]]9[NME-\<';?F[UN
M+FKS7!CPCEO^755]KI6.FUJ2NYHCUW: )X%L'HML=J@0V:X*ZP?6DU\2$NSX
MEK\\'@[0OC&-('@HKSZQ@*U4),5(Z2Q&+"$QXE1II*E*L=&^/^-V6^-3&V1C
M3LJ4]2@E#VM.;R-W/XT7,VAPVR'OME*#>]:>3H$SSI6E*#&4((8I1I)IC6R,
M%2-*62E6"^!L([9. $*WQ<VY<[&C[4[HW>&:P'9H0C7@!U)H2)\X.6[*B>M6
M^B(-EO5+\"($'U9&)(P1Q+,4A%B>I:Z@L&OAS0R6'&P*H9<%G\!4Y"DU2,1)
MAAC1# E%<I"8)+,\3XV.Y?.M_"98VL/L@1/, @M>OP3!G-C5;7\1J)K9A @<
M*Y3B/$9,I 9QF7%$5"[27 J.^8HYL:6H^GAU)7BP%X(>&X1HT&/O5)\BSZFR
MS*),T@0QQ9V;'/X4W*J<QRDF,7TFA>"?4W>,P()!C]T:>13TV$VCJB**&B4H
M(CD6B&4X18IHB6AL8DT(SG.^XAW84E3=$J=X:*^QZA2'SQ+0\N=N94  NO6&
MOTUQ\;!,]8])/2[RRUMAY]+KKWWCK==D.KGY=&+6QY3^N/S"!YSO=^5%W'GV
M\[P=V6_NLW7\$I63*OIR_'LD'4O7T5=91^OR*QYGE/]V?6K'C<_=_"F,1,1<
M"$!0K#1B.,F18D8CHU4B1)(HI5><"9L[)KP(B\?OI\"7S@,?2FY /M*_NE3:
MX^]Q!%</8 A/. (Y--'6D5JN#="7$LA@K8#4K$:<9 8)E0N:I(E49J4^].;"
MX!LC-;J%I.:!CL2$^IV'#Z07@4TWLC# "SNX[/GOBSHJAGHP,18^#Z-3.P1M
M9>!_D@9>48"B(]T-4_QT/^FR'KOX:&4O['!BX5%U)$>C :@'(%=[$;S=0:Q7
M9YR6Y*[]-+*57_6Z'^V-H_=66V=V1A3W_#![T5<;G4D3D'@.B6-!3:*L(_ ,
ML=Q5?K.Q03(55F*!\T2O%,&\BUOWX'PT*"^M/;;51:'M>FZ9:K9>$:Y/RK$<
MS/^^#T3QL1S_S<)(='DZA"4SLR<U-RUKRQOB0-R_VI7[(L$>^&TRK*;; "2R
M1A.J[ #XTT3C<DDAZD<G9P ,GLOAO^YZW5ZHW&W3QY9@$T0R^MHU_):-K=/F
M3;A1W).CIHS1JNA=^[#$\ 1K@7 LG+8AX=4F!H6%$\*D &U%K+2FU=*2. %N
MB 5P XLU<)75!IF<\XS$)J<4/QI?--FH'\JJ_<I=AQ>('-56OS&3ZM+*ZDF4
M9]Q/IG;#LIGT9'1]^73OAGWPC&&!#6"'H]PUK[]PAKRC\SEKXK3I_Q+!YKFF
MX@LB.)@:2_X>E3#-7;>K1((NYSA3<!HCE68XYX)K$:\<^+Z3J3$N]9^'=3VQ
MYKW?EH8!O1_F"S OD+5WO\!5GHM_J<HZ"*>79(DPS*15(,,$28&68D5<O?$<
M84Q(BA.P+$2Z$4OD"2EQ.VWB=6;)^&:8'9_)<=0(W@"UMTD1R65BF<@0X*L&
MN\!U"LQTBH@B6&A"N-1;WHIIL;:&U[.N<*;? ZNO+I41L'I;2)EEJ<HPZ.Y6
M$N4*9@G$<8Z1D")-$A5CCE=B[]MU>.+%DO(BV#?Z=#$$\Q3P7GX#\W)HX<;H
M56NC_A3)NBYUX>W4K\7XS%NJ/CL!*;?JBY:MG&U-X]4?EN.H+L# R@L-6OG,
M)];\E_2?<$6B^X=E;G[Y$T=FFDO=D]\40..%OG(YO,83->P1-9:T!Y]]69^U
M6PW,XBE^J&UWA3\MC]\^H9S_;E?FDYI;-@$U-N6(FC@#*9Z 9 =5%VDKDHP+
MR17.5L+KF1!,8H:DUBX:Q#6HR"9#E&.5$D(%,\G&@+.%QT^3<3V&W0>E[D[)
M2=YY HCH#B_5=OC#S\-RF["PG$T/WNSHOFSHOE5M 9STC.Q'<V0O9XRQ;;2%
M#=%2BP1EQE+0%1G0B9 6X51+0Q)A-5\Y+7X7G]Q]:6NQ%\FJ>74'ZKKJB"?!
M)G4G71*1(B9IA@1/.(KS.)>9RC7/5RS*S*@\$5F":(X-8HH94-()1SC7-!>6
M8^ZR"K=^0=:RV_;P7SW19]/8OZUL="Z-73 BMT ]6$AD69>G\J^@03QDJLJM
M<_P>(D_%30XF.9W>P'Y#IJBLIYTWL 63\^%;4]2C@;Q\XWY].Y+& >I<L8"B
M>5][[+7YHM5ZNE?[6Y$=FK>J_.;F $]X,TVP_';+%#M,[JZ&S7+Y'I_&/J"G
MHV]"%@B\(^BSZ6GED3RUS4ED)'-8HC=R\%5>UF]_>+U,'-W.>VI?O^WWV=T[
M,]#]MK8)JL%P!V83Z_W+[T<?HL/CH[V/[Z,/>^^^'.[OG1Q^^MB+#C_N]]=:
M(IM9D5GIRBU<E(^?3@Z.HY-/T?ZGC\>?C@[?[YT<P/(<?MS[N'^X=Q0=G\ 7
MOQU\/#E&K_;AKF(XL>:GM80[#U;WCF^"&JY >0"=FTC0I6*;(Y'S'/Y,4\:-
MC 5>28.]BRX%"L-Y,?;F\M[0-#,\M4-=V/I]4>M!64\J>P+O>#< +?6'R-9:
MCIR16DWL+:'QZ2S4#=-*U@<J^>VWPQ-/#Y'C(Z":D\./OQP L1P<?R</[<["
M? %SIAC:Z,B>RD'TN2JUM0Z/Z]OX-[+G[=^X:DW^ %,-],IZHOX!*HM+G+B0
MH%U/ZJAJ5VO@5VLT6RV7?N7"'D.G5P\<<YN)]IE3SN6E)C7<5=<]N 6T\ H&
M S=<E(,+I[-JX&-;Z0+N<SK19&P;&U$/9'$.]X!B_J>M:N\MR=XN^LRZ:V;7
M>R\96)UU.80'%L-_3*I+, A :D[SP]P(QK 6T4!^K=T8W<A_[Q_WI]&;OY0P
MW&A/C_O1'V?%P/HO8>[>U=?<4*];!2V'SFFG+'P+7^FIXT_;:BR+X?C2>U>4
M'13VPC91H*5'R^%EH^+//;<7N52UJ,C!C 'Y _MF78;;!<S2!YV^EI.!\>["
M,PF/E3!#N,PM:'M19//<;66;VI870S#(W>^CLO;I&]ZS.1F,_7*4TV0W9TH,
MBG]."E.,+[]7T.X02-@:='9/<+ \OWT^_FMT!,MVZA?I!3A"KUJ73\/H-UD!
MK6+A?(>8]QH/]T350#&R M+\93+(H\-ZX#CK^*P873J[M1<='>U'KQQ'D_CM
M+X?'_A-^^Y,C0VV+"Y>NY>F\X7*@[$+#B/*J/(\*(%(-LP9^J7K1KV4U!$WA
MS^A3GM=G)<!6F^ZT])+NNMF;6KYWLW%6?0,<[3<N]*&[_=XV7Y4+YRNA-$HU
MX8A1G"#%$H-8(B3/&=8J6TD[R3$Q%F<I2I5R77AUBB1-&<I2HS*5"\/TU#5S
M6N0%*%>S13@<@EP\!8"H&W_FI_PW@(KB\Z0"^.C2R_X*/]O!HO.E^>Z[G"_C
MKUOE['2\7O<C(-%.-C4"8N3F7HT7Z;016W"=A,7JD'^>\$!\@0RULG;7.G+S
M0#__A'YT.'1;-VQ\!<TC&G&P]HUS# #K6S:^H%80RE.0.'4C8.;=L J$,PAL
MG\41J<OH_TU =S]S$GSYQ>NXP7WG5Z7G9P KKYL+<^E<O.?EI,F8=E\U;_*I
M$'8+([&9U"*S&?!#XDY!YSI#/.,6Y<9F@EEC\F0E0=G2F!()[$-EDCI&TD@*
MJA"7-$\%,7&>J@5&.BKK>F:;7/[N-)&Y6- [MT1-1LV&0J=)O)6),E,DG@^$
M^=EWD-R/0)Y\TN/21:-()U <Z^6%HQ_I];5),9Y2]I3V046U0W@J/-*)!W_X
ML^'&RIZ##@4C;51 1Y6S7/]%XEZ5! !&'0*X4&_W>A>;;8;4:KTG7V&NE^C8
M.KTW^LL$-#^G7+TOFHRH:!^DXGCZU,^@?M9GCD>.0;\\D>>P%B I_7D#]^U1
M.2GJ0@ZEGX![F=\P<YTLO>C?) E[H'5*[R,V8 W;<33T6.Y7&6'&4SS=H24%
M9[8_TU<X"6__.8%9@R8O >0],&G'^Z#)+\*/VT WXA9F:FO_]*.0Y_+4UNN5
MRA>C/G7DSKK8:P>O<^OO20"DRCE =D-S^60P:! :AO,/1VY U0W05VY;ZBD"
MCV0U=M3OG9 +WX 8TF>.JX:1%U?^I L\&RPT, U& ^M%D7-.-O8!C.-C>=&$
MBM-NM-W>N@>[^(TS7KR+S(\3N'+AZ1U]'=OQ>-!\M=?]V!%9,ZV65D#FU1.7
M^0!/:@1-^T-E!]:'%]<-P&N)$E:H68.BBDHU:-=R'@=6@&CZI+FTC<YF=,1X
M#O!\.9M/W9Q!<,0,XUO[Q,8P!8NOU0C@NG;HSO*J03U:EJKNDF:2O7;*I=:3
MJIJ!3>[ Y"SZYP0VTC8)(?WH@_O.Z</PKH4-<'=\+ %8IBO=!UQHOV,>D_+F
M7D=BH%?/CVCIQBV))[TPE-@#NFRM\VY?J@5[= UD]+IXH)=B9T5E%NC%DXD[
M"5,9+U?U&<S=RYZMT]$L4TQ);I!-3(Q82JF+2.?()(JF2N=Q0E9T-)9A!D80
M1T*X>S@V2)B<(1S'0ENB<YWJ96?R;.UFZ'30I'%M2"^CQ)U)V3J]K.>5(-!4
M'+D !;PJ?@**V#HZT$8KD1B!<@$[R:C-$6<L!RO62BJ-3.+5L[;?0P=>5_]8
M#EW&UHP66@K8F\J#/T Z_5'!;$#)^I1_M./]5FF$2^QX4\F/VTDI$0P'N=2>
M#B^6LQL=V'QUBX/*//>^3'>+EUX@PX>@<W8JMM<9Q_-G^*8@MEXE;P3IJV([
MB5-0+&1B%1B%+GI%:8H4%011F_'4$ /V)+XW<=Y E5\\G ,3'Q52%0/05#9U
M[F)+[<DKB+#JUL'9B]U2M/+3?>NU0T=MZ[103V7+ZI(S_=J7.4V\LOF@.5$J
M&\EL6F(%*H:)7KA R>!R_J!I>]#<J= WDOELH*#N ?_8T^8 >_>,UL'2V9*=
M&0BVYD51SQ^<7WM"?MQ,90B&E_MSCCL]0S8:<+=JA;,<'=>N.Q#O<#+Z,"B_
M=K;Q=*F;-1H-8./G<&%Q4:_19;MA+RSS=)1N>*7+EK#5.1"QF@[NG1QXM?OX
MS,*(Y9J\UI<;OC@<UI/*K<X+UJ+_<'ER8!'!/T!\[7H X[5GOAW7=$%.Z5/\
MZ^7@I2>^<JX.Q*_E5V#*QN8ZEY<NZF>_.8^X%VCYQ'67 &IU9AZHX^Y(V.Q]
M@^*\&,\YC=V+)K57P4T#*&K0AD%K.\B1'[*'$C>?HO,?N]O\.UTCBWEQ.JK<
M2)VU"D^P_YP4(\]VC=.E!W,J!F &SWS21?UGKS$4D',07,[QL[=@KPG!NM]_
M/S[Z=WD^>OMKZWM>Z\9V@UVS],#8]JL[*]?.YZJASQ(<_8K/14*G8=3V (;?
MNFZW&RA=N^'7O,TG5OI-\@?T_.:= 5,ZA#\O)N>^O$#K[U_:+\#;RK:G.U9W
MNQ_MZ59 #9I@L"F:T*U?A\YO<<W0ID_U94XJ%W/_VKDI0.XLD(N;Y3Q]+ A!
M[RMIJ+2ABZZ6POH7!_/_28 K.FF48QA.0YA-C'^5I!MB*N?2 )QW(/=ZMA,G
MGACF9+N3P?:;=LC6IAW<$GE62=B_;LZ?, ,/3X"P>N<>F!KE9>G-CN*6WSQ[
M6:/&++\ /KB36&5S"F'%F)B]<;9,[FY8**_4K-,9YGQHX^45]]DP<XOAU31;
M7;C15G,#:XX\3$;M\[MAN!P6!X#%<#09-[S7I(XT<-&-4!I0X4I7IV%_IJ+!
MW";GHVXI7,8W (33B.8NT>,)/,P=.H/IP9.<2>\20K1T(J7)59F.Q8LA?_.<
M(Y#XC5IU #8H5PQ;#^2RKMW"AG^/#R7^"M>YLVKPFD,C'S(S<WN2O9U)"-3L
M=.R?0];W3F=]TW7)L]%M$[]#UG?(^K[_HGS<3-:W]^A,8>M%F<-'=@S;Z76/
M?9>EV;@5CD&P@\+BPW8O6-T$.[E4WDH>S)9)-\O4A$Z=9G.T'WV0NE'Q?!J3
M7[LFW<?K-[,,4Y<#4(PGC<W:6*87A9G:&ETFG]=D/,RY7VJKG5D"&I'7C$;-
MN3^?CGHZD;Y$U6).TVQH<[ZTTMF;H(S:25/NL=4IP4QT6J/38,XLJ$FMMC:]
ML1\=W7+J2UG2WC?NAPX*]O_*^?B<C]@O)D?-GZ-=66MO0'LE]*)UN#GG^^J,
MY7383>KENB&T;E'OU>ATV^:%<Q.L)R.77N8/];ITLZFGOLDM5K:I<N 2"#KK
M$&[^ ZAP:(%KY/#/?O3'THOFR:(WVT30$V7';O,1?NFO[%R#5TY\:=$K6YPK
M>$KC5_1OA>&WCX=73>KI4ET3RU\(Y?LGN+& ACSQF7'^>E>%H=G3N70"Y_AI
M/:Q79<'-+8.G2;_.GAO VK!EOJ#7ESX4WTW*)RD!HY_7[;%/QR8NNE\WH-6F
ME;MD>J?@GRX4.VV]N=[2R*V=9KHW:W.+N35;[S)*0(MU"PEKXYU4+:'U&G)S
MOU_(0<>@+O=HW#AHFV'Y79]F0K@%FYJH]22'-Q=N Z9IYGX'8 1UWB;"7S-$
MEYYOAW-<$/G*C^<CH&_;F^;W^MR[\=R-TQQ*VPYL%>R68:TQ],:3:FC-+5,H
M5N#"V=1SS]PZC\K#R+,[]CA]"-%_,+PHJG+H*!*8XC?I-_T%2_M/0*%SISV6
MH-4[0.KBHBV;[)P&#B']29G<&H>E/1BO2UML C,:%M6?J6E\.*>3@5SU7(S/
M9@=O&K3S>8.-9\:[<@$S /A<CN29E0.0*=X/N;!U_YQ(SU)>@G957YV?8_I%
MSZ&P2VEPK_"!-><>\G*FJ-K,2B<"1^5@,!F[(@+3]"]8,7DZBP<ZD[VLI??+
MGLG_A8>[*(%+@1P[@51W:9H )H!'C8":"P2,2J]WN*59<(LMGU$JYQRO*XX5
MYYYK,\=@R4?% %:^<^RZ.YN%E%H7I@FO=8>KFMSQZ1Q[\^-VZ=OML->XZ]U*
MG!6@G3F/SF!&)AVRY0VL^6UK)&"3<%36JT%9J;T,F8^?+(RDR71KHWR#1K&"
MT9U[OZ5J\G1A9NX)LQWP/GJ_0(WOJEEQY\L$=<9I*W7A_5V.I+X6SJ]>>>FS
M*-#.Y9^MQ#1-/W"_.4W:L!^IW]/NQ%;K#/2Y\B!E"NG=;<X)-QC,3EVU.E#G
M]ULDW74,XO^^+C[E!MK$_^ULWWW6\\*C9]Y=/^K6&]P-OLG.G+_AO$' 9GF^
M]^R82W:^Z?"85Q#R0?GUY49?CQS3OF0A,Q]Z;:G#FSQN6:9Q.%VZXRU-!GSN
M\YGGU-O973/060I.S30R>H-&UKQX6W2O*XNC;/1(?IQ(JI1.D$URCE@L-!(T
MTX@H'6N>Y[F)5ZKY?,^1?)^@=.@KX;GS+I]MY8OV[ V;&OIGI8LVUTUAP7 B
MWU,![SLWYJ??#J)71Y^.CW^*/A]\B8Y_W?MRX$_G^T^_?CIZ?_#EN N['_SW
M[X<G?WNQ0-K0%RP74-A/+M<^\L0UOQX;91HB$TU<><X4NQ)80G"D# $>DEK*
MS"0DX78C-<'<.8S)P'[*#V3E\A6F_/-.UH4&)GI?#-S)PQ/G#K@%^SRD6%GV
MC3^I9#GQ*60#4"^\ZNF])2,7FG7:?&/\GX\FXZG:JMQZMCJ]7U&?GN,T\:8J
MYVK7F>B5=T>!NBF]$\N%K4?CN3N,',N?WBS6?FJZT?G1=%W?FC5TEO ;.1F7
M71M,MR0NP -<YRY' WE93L8PRV_6O&UFG,;]^,?N>NUZZHUJ^Z:V(^FD9;<[
M/L+?//J'6=>X\30LY9(#&]OC3?>,N0L7>N?YM[*LGV0_MN6*KK@&]T5ZTR4W
M_$Y< ]#[/N1IQC'?DF]^I=L8GNLAJ*3^\[0"X]:@EA^:!J?K^<$=@6XBAV^:
M^*'[XHI-NK')9N=S><#NANNC8@_41W5;VC=N>GI %^Y7GY-][507^^;&?=<V
MMRX'A5G7N/K)=O\NFL%5J_<WU[,D.ABZQ)KY9-Z[D\OS6,,-DEC J(!1&\0H
M$C!J.2,H7LH)"GAT/VZY9DEVJ#E\X*CK.(H$CGI8":^!C7+]7<)\[9"7]@!6
MZ@EX\QZ'.3_:L7< ?&]+^:L68&<D_IK'#LNMFO'BKM_8QFI#.[N6LQ\R'=>[
M=>[E6_.;<,7RO+K^'+6[=>-'I;G,,#-4(ZV8<$V!<Z2DPD@ID?(LHUQJL0FG
M*O#V+!YQY4EHNG 2&OYR[7;@TTU'HEF/Q>3*0]$[S5,_!;3<T9T-:+EU:"DU
MQZG5,5)QZD)0KH4Z53E*#&>9R2BV9B-=6!X4+6F/)@$L-^B9>^EZ^Q]MQ_:H
MZ]C>-/D)@NF>7'2S]?SX:[+9Z=^PY=_E/GA"F?; 4D<DJ<XE%RC+0/0PBB62
M.<^0%9IAR4W&LHTT0^OX>*]AXZZXM$]]F.^BY],@UG;UNDHP72N/KI@T$UFL
M$X52K%Q5;9B%LEB [%0X34T2)\E*@;$-3KI-\5B9^^:FC=,>%O3VK<T"I#PP
MI.R00SN019 T=Y(T&F<Z3Q*4T PCQC.%!&<IHK'D.L<QU6H%=.]BWVR5I$F4
M%-;& MD4N\I_EB,N9(ZL3CG3),<R7A&O&YST(TB:I,?9NIJ!0=)L4TQG/DW4
MH\A=C,7YS,99;FC[U'C9M;)]MN2[&U)"@U&Y4;YT>9; F*:<N.S8I^/,I_&(
MWF8MMD/N/VNO*:%Q1E+,4 Z&&V*IUDC$C""12IZH5&,K-]* <FVZ_J+W=.@*
M"/K"J?6G?,^?+I#O70)V5?M;IA(VGI>PY+:NU2N\QDFB*&48<9;!7+CS&F<&
M1$66ZD3'*3/&/,3\6\WB45< ]Q/\I)K&\T*T34?OKEV+8. ^2QH)4N]92CTM
M,$Z-IBBE!A \)19Q931*DS2+<<:S6,2;,"NW5>KAE,)P,4:9EAEB.".(RS1%
M&=869#YF#*\4X=_$_)]"ZL5]$J3>AL.P\-F=P;OB2/9#U]3<KJ.V\Z>VIZ>/
M_>GM%US'X--P=@X)=QW0?!WATG5@D"-7VLZ7)VZ.AE9V-*GTF6_VY?JGRO-9
M!S1_P9?9!9^;"Z9=T.1D?%96OOIGV_%I>FF91Y.1J_VQ=6U0J*5,Q&F"-"8:
M,2$IDH02E"<F36-I.>6KV2HX25B<&:1R?\B:98#:@B-ID@1,$9IBU]]IZ<#T
MN-1_SA:O7;N]=LFLV?/EU_#M^I\L=Z1=TU!S._N?M.4LYLL(ND[JI1L/K$^O
MK=OBRC?YDHPSVDT:X@7"JLK)Z=E]&QQ?<7R>,YL:*RS2"@B!":N1M$JCG )-
M,&$2358R/0DU$NM,(JK :&4ZU8BG:8XRDM,L3SDCV-R.&@Z^C8JF#LU[$,*+
M.VS@&P0+-3YS3T)&7J)+*ROD^@\_P8XN;PR;8NRR('HJFFM:O(R+<U]M?6CF
M"ASZ=O5+<.>:"W?]*%W]E<IV!_"7*FNU73-\T^*F+T]Q[LL:-?]MR7-<R6'=
M\%W=58<L1W8(]U5_VG&O[5IY ;LZN'0=<\IQ4WIJX<:R<G6TFCI9YU8.V]+I
MKG*[+[74U*F:M89U99J:>5\%UJ#]P%1=@:6VL&!74FH.K*?+TY06G.//A04H
M39$7KJ[\M'F$*X]5NZ)437FK:;U"LWYAIV*H'[U?:I0Q&XW9NE;F3!N*$T40
MC3/@]R3!KL0&19082Q,M^!J;!:L\RW4B$)&,(692AK@3&YE4EG*%<4;5#1AA
MFC4"#;XHVT#8VNC7]T@)(GI)QK=)4,SHKBFP-$=[KL[%UJD/C+%$*=A)J64,
M B-G2.'8H$R)5($&D6I%'YH8_BH'DTTU?(S[ZVRTI]8;FGJGZQIDM:T\?,_L
MMG%.IX;*:8.S#MBVCGJXX1@K8Q%CD@/U4 ;*9YXB("@I4TX 5]0R]:0F,T2D
M%G$:PST$6Z"X%".A>)9@15.@H0=5/F^D(=876TA#<TV4KQ*."_7^KBQRMF5-
M0<2F>H)LX=PVU_!DN3I=Z'.R:WU.V +S=LQZJR8G2\01^IR$/B=/VN>DI<?U
M+@HJB.144F1$KA'+%6B<EF(4$XMC9F.1;ZC"GSUU-B](R:;%PGNPW0:^AN^]
MBF'>F?JWR]DL^M&GSP=?@.8__A(='_SB-_4%^YG_L'.5L)O2M[;U%CCOR6)3
MT@WY\#9_<I$0I7DF4<;!A&.,:"3!I(-_)4JP5)K$LHV<\VZS6C]U)8);7ELT
MZ-LOK[/H46VUT[]=PF3M/(&PLM9ND_(]JX)LVF;/]2R@8*N+0MNZ#2#THO;[
M#U)5;=^,]B=/2=,P1-,]>A9V&&Z?CRC#QB8L(T!$L0"JL!H)E]<EC0*K+3%Y
M2N]5,<#7+N[(:+\K0_VQ'&Z>I,KA5A&4ZZRS2E13FIJN14<>O;9.?V7;(JL>
MBBHOU9IJI^U" :!/G'D(#+26:AV939\^:UWNZZDV];I=UP,[7S;^"9;G!8B@
MYE+WY#?%&-ZKKXX(MP SW:TGW!@?D<9O[S."#:LP:T'S\5JXK&Q.UV6M;BKO
MVV'3IP)85195S[?3 #53-\T;0._,<U@(X%'WDV=6U[K"^J\B.VQUU;93N8^@
MN/X6A1RX#BS=N\NFW?!9"5P,IO_8 6'7$7O@6Q_Y5TX?)%V;$@-4[IM-S K[
MOYT-?OKLMF6':7JH^SXE[BK33&&N.7;3MMC?Y:(JDZZA\.R*M<.<>R=\\/UO
MED)5SGU>^#X"OJM*.["Y^^;F4H]A01<O<X]HFYC!GH 8T<6H;0!L*M@BI]>U
M;UYHIS*:G#OHZ5JF#.R%=1&=8@A/TGYTKIG[X,\S*\W\_HPF"KC9]VUOT7BZ
MED[N7+0M%*JNV8UIXF\.SR]D5;CV*A^F.Q) >$M >$Z;VR(<]N2U;FC U,V7
M#H<:9@2T^;-H*754C#R37-:^P9WO!#)L&+.RN0] ](!IQE6IS^RYRTCK14=@
M(C:0L@8Y&OKOF'L>4>8&DKM34],61-8UL9&5:R1E[<#7BP<EK6L&U39%G$<N
M-TK /5L-VUY[0UN=NM;I%Z"NC,ZGMP*.UK[#3EE6BXU+%D8S@Z(9FBV"YUPK
MI=DPYB'B'U+_:<>+\QH5'? !!]0>GWQ3%%=7?OY5[HK)N.E)-7WM0K>NL\E@
ML.Y)@T9.W/BP!OKF9]RV_'(]^KZUR[XD&6:[T$!7/D=;2^C58FH3%G?H]6LY
M.9?KL"L B,_K:PR^&8L^'7S,H\?JN.!-%TX,#2YGQ&.BH?VJ)L7 N4* JVQT
M8<%4:.FSE<33WQIE9]99JU&"IG*P#Z3R%;BVZG4Y)0T8N-9RE6L,1V*"?4BT
MZR=IVH!7.]23679)ER>R^DO4ME@VTUZ4OL5LV_]KX"<UWW*S:X?TP58 2I];
MC:#M8>;[G?G(V[P"Y[N&-IT]YQ)>7&,*V\1Z[S"$ML_K\LOG>@.Z0?[V^?BO
MT5'3ELQKDHUY^%4ZA:TN!RX9$D;R28]+%V=F39BY#Z;?W.C;H2]-V#WC1MZ>
M-NS[6C@]JOPZ38691;!7*6NN09E[2]N%SC7H UJ;[75+% "KU?ALGBA@ A^*
MH1QTU\Y-8C:.IM^<UC"6"6#9NFMEY?H87[II%J69K?OB2O3:?HFUS[9J%MAE
M5\& G0HY;G3BYDW=D(L*KIX;<=*/]M;$^Z=-3IIW#$&(S+7GFK62ZSJ_O9,#
MST''9Q8N76[Q5ZYEX[G%'I> 37#UUF4.I)3S)-88Y:FTB!%JD)(X05H9RI3(
M$VR390>3PL+&2<:028R">X1%2EB),+=,I%QS1E?25J?^)-\1[JAK!KFA3 '<
M9]OD6^HR!1R-;=V."Y92&F<<69,DB.5YC%0N*=(TIIRI)(Y7CXHHS23C/$4L
MQAGL>,H1)RXU-;4L2^,$^.B1=YSTLRW<\5[7_1*TX\'E7%\^?$U?OJL$:Z^Y
ME=S0TF])>#B:\_=E-[S22ZG)? [EDD@+EN^6**[KO,6PRWL#UW38RY<G\ ;>
M?OA/KV:'Y;G:?;J&N!KSVKIF\G6G K?==)M4I\'E7$?I<M9&>S[. >#GNB\W
MCVB?Z-QU8V^ZNF<-BO.B4>%Z[64^2;YIENJ>M:XUJNM"9_7$NQ_FO)0UJ&=5
MIQ7#V^ [N (42.6/)\&#FY&7LR-=N76_=UU6Y]L.UU,WAO^TK.NYBD*#P=S(
M3MU7C8'5V!5MID/GN6T<(]YYTOHF80'!$'%FB=.-Y=")"I=+:#PJ3RIMYT?@
M-T#9H87=B\Z=PP2^ =0>K@LP^>65#318T_0!K\?=N8&5:)3RJ?'.5I.P6ZM7
MM*M5N[[DQ7GCB?%9CZT4Z88%BVMAQ<WW;?L9V#3#V9Q[LVUP'QL%P"??6GTV
M!)8XO>SY8PL3E_)RVIME LRYH!::YTY796"E.\\'8G;!*0(:1&LA_AS2^G8Z
MK2]9EQT5W3:S+Z3UA;2^^R_*Q\VD]7G#9PI;N]OY]GL"]#[W(OIBZ\E@'-3A
M&[S.?X#.XF(WWNMG+^1@XG6YLVE(P>LR9=X>EVF5B3G=Q,ENIYTMZQ'>W7=:
M^2)R5>GT E!Z?$TY'YV::A=%T\VZ_='9R<W^@:YEQTUPPRE&5>&5D]P-8?K;
M>%P5H$_XG!M0/[W>THVC'QTZ=F]3<6# %Q98J(V65* ^3D\0SM29W#G*W1IX
MG<8%C6?.U_X#'0_&G&HCF$:)%AHQRS(DC!4H%C)).#59RC;<77LY"_=PIEV]
MNVQ_O"H?UP_$8]'>^+:C_SM^$A7C>'+N(B#_Z_:U<"JY"Y+.:Y)=C*'+UFH#
M"#Y.U_J@QU]+?R2Z=4Y'=J4+:WMBK/!W-SVXZ\5FV7-=L=>?8[ZR8?M-QW :
MBFIW1,Z7@+GEKFRZ1[=XDA[=-.MG*;VQ.7;";FR@?</OO"_B&YN!AW&$<83F
MZ?<S5$)CXKNU4<4\]%%=TSU]3?/T*'0L#AW4MVJ%7Q10A7[/5YTK")@4NJ@'
MKMH45\UE8P?&"HP5&&MCXJI-4@I<%;@J<-6FN&J:@!/8*K!58*M-L=6)R[@/
M++5UC==VLBGWER;0'+VR+KMMV"3E_G2+2+^;!&)]0O!5+>AF<T_[,86K1F5=
M^*PTGX)97-BK&W'@37>\>?Z(N>:QUW9^>&HR?*P^-=O1@V9QA3??)88F.LM)
MBJ@6%#&N$B2-QBBF@NM,6L+U2I%=JW)+1,H09DPA)A.&!(X5W(@3GBB3I?%*
MVD4+!Q^J\MRE<;E!_%&,S_8G-2R#K0Z^M<>7]^K:G>$T)_+;E<=BOJ_[J*"]
MA%U=B/F9LL2C=B<.&!<P[AECG*%2**$9DM)PQ)1*$6>NM1/-<YLP35*QVF Y
MQIFQ+$$)IX"+TH(V!UB(8I$DAJ48<--N#\9QT8M9&C N8-Q6;^A+QKAGW4O0
M4"Y\+T%K$T!0JR3BDF, 1X(E)3DU\4IR;BZ-,DRD2&/KN\X2I&+ 4J*$)<9R
MFV\3@M*XQ_#5YZ=WFN&"2;RK.QN@=.N@5*HTMYP;A$TN7(NC&(E8*Y19&ENM
M,+%VI<513EAB,<6(QZXN.1,<<6H39#&HHUF<$AZO=+5Y4"B]92_N'L97M\K;
M:<8+D+JK.[N;D/K H&<-YG"[12D1!K$\ 5U0)QE*<L4SFIB4Y*L6>$:2F'.*
M,FS  L<B0QQ3@I(XR5--LY3F>GOT1YS@7ISNG +Y!%G2+SUP]LO\6=%7[C!H
MB)H%>;;M[K,7(<9RS3*<<8YB#/]BJ8V1Q*E%-.?&9"17*5OI*7B78)F'@,\>
M 38EGF@OXS1(IP!984-?%&1A&Z>"LARE%+N69A;@)W-E*FD>2\%U"H"VB=C7
M T!6W,/7-% .%!X@:QMF_ (AZUG[7[G,LIAB4,5RB1'3S( ^)B@2,HGS/$Y2
MHE?:A]TEE'4G0+R=7Y4F/1C"KB%C<*P&B'Q$B-S4A.^*D-<6)"-ARP,/;]6,
MMY*'@YISI9H3TSA7,</(2A(CIG2,E- 8I<002;')A%II8G&7B,L#JCD8]T2,
M@YH3SB1M2K9^6JZV&<(K02(&B;@MOLI8$*V%L@AC"O:Y3A(DE,I0*FBLL&$V
M8?DFPBM3&#CT*' $&+ YGZ4@8M=$5E#F W0%Z+H6ND@*ZK8&K.*<  PI:Q!H
MVQG*N2*694DFDI6LSKN$61X4NI(DA%L"=(4-W3+H>M9^""-EHEA&D$IR@UB6
M4233.$$T2RW'A.>Y3#<1;KD7,-XR[")Z-+NZJ>8S9:@0=@E0&:!R&Z RM=)J
M0SG*:*81([%&"F.+M**:9Y+&F)I-G QZ!*C,>D+LW''T@)0!*0-2;@-29BE-
M4^?O$R9V#;BS!)1*Q9!-$I+$%I.<K^3PW"6X]0A(29(>W[W$[*<(<H7S0\VJ
MOK=PB>O.VS7%EN>NO]G_-E_8;R,[K&]56#4(J:V:\0L44@\L1A@Q.LY!92:Q
MY8B)+$8BSP7*LCB3QD@L[$9JW\US)'P>6/=A;VCVYAAS4U[<GB [IW@')VZ
ML@!E-Y3QM,82%T9*78$FICA2">4(YPSCQ%JAUARPOT/\Z1&AC/8("Z'T &5A
M0T-N^\O=\L##.[:A+T(=X5:D),8*Q=JEP]B8(J%BB5)J!>>:8Y[)380R-JJ.
M_$S$SF6;!ZP*6!6PZEJLHHDAG"B#-&$2L3Q38 99C5+.L-2Y342VD=IDCV@Z
M)3V6!B]0,[=P7N;N#+,O1\58#IJ@@2G&D^IVC7F#S-BJ&0>9L7']5ED;F]@@
M+C!S]= %$EELD1$BMHISS)(5_?8ND8-C>WH.XSB8\=^>,?Y4V4EY5 Y/CXH+
M:UPQR_&FTL 3MG,9CD$'#G@6\.SZHN09YBG++8IYDH+MG2C$-0!4+G62FTS'
M:;)2V/ NX8/'QS/2(W3GTFL"H@5$>WA$"U&$G=GRP,,[MJ$O0BO)$I6D,<T1
MIX(@EL<)V%M6HB2.;6+@%ZM6/'-WB2(\OE8B0F)#@+.PH2\+SG2<Q3D'(RN5
M! RF+#9(D#1#BNH\%WF2:LLV$6AX"B.+9R'>T,PM'%VX.]^<E"[:(#UI/GE1
M+AI.\KT4I@U2ZVJIE2093Q2E*,X92"!B0 G/+$$9)<:*..7IZB$)DJ9I1F2.
M4IRY0MLN&YED C'K$G]R:30QRU)KHP*)DAX.R3P!K<*&OC"T8I9P9G",C+82
ML=25CK&) AT[%51*J0A?*3=#XES*#.?(<E#)F3(ID@D#F&.9,)G&.#;Y@Z(5
M(SV:AM); :W"AKXLM**8"L 8BZRT+HTD ]#!1"!,DUP++."GE>9,VF &Z 2X
M)E..&*?P24F%<F)2H92BF5KQ"&P4K7 O24)$-8!5V-"7!59:&,)RPA")18:8
MD1QQ=^(T)3E/4LN,R%<Z"E P]7+I-#$P EU>B4 RAD=D7..4*4TEBQ\4K!)0
MK7!P30:T"AOZPM!*@S9$\P3T(IHB)@!Y.+?.@47=\;/<)F3U!)KDU&"-46X(
M1BQ3"9(X%XBF22PM)I:DY&%5*\)[C 1+L)G;7"0%/DLUL ]+IO^8U.,BO[P5
M&BTNW+4OO.WDNZGZF4Z7KAFN6]4W<C(NWZJR,K;RPRF&IVX"[G(TD)?E9 RO
M^&;-V^9U(N['/W;7 W\-Y*BV;VH[DI4<VVXA/&\VC_YA7=SJHJ@+50R*\>6;
M[AE71:3\6VG6SU+ZX]L?7E]S$>XG#-]TS0V_\[Z(LWL^(XPCC./U6L#Y[M#M
M.I#XGGCNC:*Z ]8'Q.Z9-O (VMBV"*=-3P_HPOWZGS]@_L/U<VVAN1MH/QF-
MH[H<%"::!KBW8/MO6RCT:\,EJAR8*Y?O;U96T<'06!.]M]J>*UM%%/<B$A-R
M=YIY'NNX03H+0/7T0+6+$YY"%PG(M;1ZQ[:Z*/3M3C\_YS5[5!ZZ9DD:M(KI
M+BD$@:N65^^#5!6L@_-Q!,8*C!48:V/BZJP87<K*!*X*7!6X:E-<M5]6H](Y
M3P-;!;8*;+4IMO*G/@)+A9)FCW'$Z(N]L,.)C5[900'7>-NC#B=]GE]0^78M
MAOXMY$Y\?^X$IE)D>:Z1IK$[=Y_E2(G8HD0E4EC*;6[X2NX$M4P3RY'DB4!,
M:8&D%<8U5%$VD8E5?"5WHN7%#U5YO@\/<X/XHQB?[4]J6 9;'7S3@XDIAJ<N
MQP+^WYS(;QM*M.!9SX<<0IY%P+@MWM" <0^&<83*G- D1UF69(C%"4>"2XPP
MP4KRU J1K!P4BB5EPLH8I=H=X*<V0X)RC4QBTC2S,8!FNCT8QWB/A#HC >.V
M?$,#QCU<_22>R\SD#*7&=6%0BB!I!$-42HJQ3D@L5XX7)9IGC/$8):DE+F^6
M()Z*!.4)931-$T;$RO&BI\.XK)=FX9AW@+CMWM"7#''/NL]T#O:OS#E%24Y=
M:P@L$2<Y08+%:4*IP%2M*(F2BBS.-48\<4U%8V409S%'"<Z4M%A@Y>IE/"*
MWJX/=9KMG#E\SR;4 5"?^<[N)J ^,.19E6$:^]-25"#&4HJD4AP1CFE*+1=8
MK)SRC!,%W](4"05HQU(.=G%&W5%/;4BN>1R+E0(:3Z<S8E=N@\2[AG:A7-VC
MQY)^J<JZCD95"5]'KP;PQT]/7K6.!'GV4G@WB+%K-'?!#>.@JB<VSA%+5()
M\V:(*B,PQRDFVFXBA.4AX+-'@$V))]PC) O2*4!6V-#M@JQG[<H01M 8 YHQ
M;N%?6'(D),<H3V1&58+S5.I-Q+ON!(BW<U&0;.=:DP471<#'@(];@8_*YEP1
MT!5SUP68FQRI.+&("(.)$<HHGF\B5O: ^$A[<;)SM6,"0@:$##W/0L^SP,,O
M?D.W0\MYZ+Q$P4R:I00E&;&@C.06J31VK7^RS!(I>6[%)N(OFW=<93TNDEU3
M/\()G4>/JGP:V4J.B^%I5 QU>6Y#9"4(J""@MD9 ,17S+)8<Q03^Q318RR(S
M')&8DEC1/,WI1@X'36'@T*/ $6# I@[_]##9.4]B4*T#<@7DNK[;1I;B).4$
M*>H*07.&D51YCG@F-$MUICP*W3\$\G#(Q7I\]V(@ ;D"<CUWY'K6H0^6<J8Q
M4<BZ7NLLUAH)R1*4FERDKJ>09!LY)G0O7+Q=""3K)<G. 60(@02D#$BY#4@I
M*94VDQ;%+&> >A(C%1N"!!'26)Y1G*P@Y5W. ST"4O(>F.(!*0-2/H^=#4CY
MO)"2@66=<)FBF#! 2JE3P#^L0:=,K= :9\EJ_O5=PEB/@)2TQ_#.Q;7NB93A
MV- ]..:]A4MTX4O/17)H(GE>PHS^M_G"?AO987VK$J-!1FW5C%^@C'KHPZC6
M&):E$BG?D,]:BR0V"N69 .494Z/BE:3UN\2:YCD2/@^L^[ W-'MSC+FQ[LE,
MA'ZD <K"AKXL*#/4RCPG$F& (<0H98C37"*J#:, <C+-Z":"3X\(9;1'66@$
M'Z L;&A(,W^Y6QYX>,<V]$6H(Y*#[A!C@Q*-)6*&8J123%"<$6J5))G%*[DP
M=XED/*(Z0G8OGA& + !9 +)K@4R;A)#<,J3 'D*,9 !D..=(9#87A*@TCE?K
M>-\AT/"(0);T8K%SYWC#09I'CS/LRU$QEH,FHF"*\:2Z7?_:(#.V:L9!9FQ<
M9B1$@R:;H%BXXF!:I$A2F2 1QY@9%><I6Y$9=PDK'-O3<QC'P8S_]HSQQ\U.
MRJ-R>'I47%CC"ER.-Y4@[BI;ANA"0+2PH2\+T8A,@?$E1SK#@&BIH$@8:9%4
ME&DKJ<W2U5/C=X@N/#ZBI32$& *>A0T-(8:7N^6!AW=L0U^$3I(D+,Z2!"-*
MI02=A'D'FT2YB8G,8BMEJC818GA\G02'^LP!S\*&OC \,[%0:4(21*UPA4\2
MBC@W"IDXM=S&EB2,;2+2\/AX1GLQ#UZC9F[A8,/=^>:D=.$&Z4GSR<MUT4T?
M\]L*PRL(LB#([GVJ0F?6)%8A1@Q%+(F)$V0I(LS27."<6[U2P2NE,;6*8I0H
M#O<8F2%%=(PR>%B*;9)GJXKY9B,;O!?C(*2"VATV]&6A%4FEEB8%M-+.)2"Y
M1DK0#.6:,F(UX ^5*]5I8BE5DEJ4$ KW4(61$#9'7*C8Q$E"X D/BE8L[B4T
M-*8.:!4V]&6AE39YFN*4(RMT"@8_P(]D$B-.*,[R+-=*KZ 53J2)TYPBK7F&
MF(@-DFE"D%8VI\R*5-H5)\%F_9EIC]+0$#6@5=C0EX564J8B54F.*%4Y8LP0
MI#C8=Q@T+IPDDABYXM+4&MN,4C 7B1:(Y<(BE<L< (\F)HVIC/E*Y;_-ZE:B
M)W@XZA'0*FSHRT(KFZ0B >Q!EG"#F&494H;%2"B,69X(RGF\$E#&66*L,BC&
M,4,LQ@1)(A6*LS2&?1!68?.PNA5E/9X&QU4SM[GH"GR6:F#G1CZ2QA3#TVX,
M+BJP*<I5965L-?V[GXS&45T."M-=637A'=SG"?GQ3F V%ZOH!G[5X&Z]=J:X
MF"YX,TXWG#>LC^F/;TU1CP;R\DT^L-_F5\;%2?XQJ<=%?MD]W%^#ZK&LQF_]
MM!!,X+Q^HV1M!\70KJS7;(BT3RE=6)'VV7>(&RV2YNV6B/99EB:<\(RD+(Y!
M\9C-O!BZP2._ -?,^(>?7^%I,&AN29L7X#A>?N(C36UQ][_8"SN<6(<F$8D)
M==UO!A,#]\I(G\'^V*C,HW^[N9;?=2_?.":G1 DN20;:("6(:2J0T#'8N[E4
M,0'@,_G*.6( 74M8DH*]*T#KI!(T2(-3E&":$"*3V&*[C,E'Q;@X]8?LCNUX
M/+#3"'EMKP3J= &HDYN"X*1_=96_1Z>&"*X>N&6N;#T9^&Y(>56>1^,SZ[XJ
M!Q._"4 1Y:2*?OM\_-=HMD2>AMSWQV?%Z%)6)GI?7!0U_-*/?-^O:.0;?W6=
ME5P-NO**KDO/BQRMR3BE.48JD12Q+$[!.*$9PGG&=6) ZLN5LI/.8$E$PH!F
M109JA0*- E.,LC3C$H@SS<V*0;,/3W!O_J,8G^T#\L""55YMV)^<3YK(]+X<
MZ[/?1WO&(9,CUY.R9?'],SD\M8?# T LH$?[*3^IY+!N)O*Y*G0@Z562=C0*
M5/L/J\<M_=7;2(!&4Y;(V)6HXXD[CIPC16*.I"#:8&8QEBM)CYE@/*;:(B,R
M"U8X Z*5F418DMRDPE!XUM82X"U;M_>OSIA\.D*\!B:O:D(WA4-8@'*&B:>R
M&-XFY>6!9K2%C( !4RDL%$H,<8P %IO0DCC;#<1[3C65*Z72L4D)20E&6!E0
M)I0[7LDX0[DRW AKN;%XF1$.A_6DLN8 "'O\"^S"M16 OP\^2?]JG_CC$^V3
MO7G*+1U8#^TX*L[A-6.'P(7; #G4#L1U"?9IX70$0&M=UN/:98.5KFR"-=%7
MP*K(R',)N@.,[Z(H)_7@,M)R4L.OZC+Z=5(!^,BAC0Z-G'+G!ZG<MYZV.@;M
M;;,,R'+."<8Y,E(IEU\3(XXQ!]+/N4MCMP2OY-=\CPPX+?+BS7XS_[WI\CI)
M\-XO[KY?T'>7T^7<$#_$6ZE-W)_ 5N"_Y^G7D?H([,="#F#]G/N@)?!+KZ/
MAS,K.S*_CEC[T;&UT<=R;"/B+\PG%3R\BL#JU).ZGM-Z.@W'O7]QL W#-9SE
M'Y5=\ZA;J53]J:<!;.+NW\'CL"&/ ]E^C\,=34$R4WN>@4)N%:&Q51F"O00]
MA+(8@#4WSME@LE3%EID5A5Q@2\"(3)'@)@:+,%.(*ZH043C)8VYTONHT?G8*
M^3;I-O=7R,E:A7P+Z5%*HF4,Q)0IRQ!+$X5$RC0"DI*82ZGRU3K .J&*)CI!
M5E&7(*)S)+5*$>,ZT2+-)#;Q(^K%V5;J 4$]O6UK%FP-38Q!5B=@965:(<DX
M16F2 TY2#-+W7HCX=.HIV4*R?"#UU%-X43DILL7NV 1+9K6-4<P9!:L&+"%%
M#46._DB:I3$U>-4=:S--B$$XI0"0.2.(2T60-DI;GN;$Y-G:B.WA=$5:XGM1
M9H]#/F^E#"Z=D/3Q3%3F"&BK.9$UI2==5J,29*FCF!Q4BVA@02F?_KP__?E9
MF4/TAD==,>MF:6;,%(RBAS2*Z/8;1?NR/O-459^5U1B-;74..L2%;31V(+C*
M:1) 2AWG%<,KV*8?K:,EAR3N;<5P(ELHF7X/"/-Q G9#H=MO_S6*YE=J*1OB
MNNE-$;E]8)>>K%1",8\1EG'J9#]!(A$4@4#/A(Z5S;(50-;2DCC1#,6"^/;
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
M5E=V[$J]S2D+*W?Y2V>_[VE=3H9CYP(,VL1FF7]-I^RMC&X$K2)H%4&K>$;
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
M/WN+W:,K+NR&O9GG4Q\0=':(]2K4G (34@4"31L#"\N:I=KZBGOUGEL1Y'K
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
MM/6A+%]SFH1:_$2R \R.J.EUJ=XW$*49 G!LN0K?$4!% UQDV" D-1*:/BZ
M%UU3*V:H(_7LT?)=WV"(JKMP'D$,=!"+QCO-<2)GQI?I1T_2%["]<%5I0X"*
MP@>Y1!99:>XZ"S9Y!*T7/FQ$;GNJ=38#0O)L=G0.Z\P^<N#4[)EM@%+<"1Y[
MK=FSM&5OU0VLY]U@IM18EKW$-(X0OZB^:SZ:D(,CD7 H8K@=@"6USB\KP^I(
M9[4;5W^;/,=" !3O+N<=<^#()K+-5C!>J^$!D7CO,?RX<-;VMUK/5SS>&ZGB
M18]T+X 5UA\7I3'8@J3[Q2Y(Q'^P75-8PCP0X=&M.#/K>7/+0;9=:3 B(/F'
MN 5J0N2OX90(SJGU9[W']6/M+=T$=%MID._%V+:D%OUF,)3 :RE6',_0$<1X
M)O"%,5-D5I.D>:IW%\;>ADUFX^7D=KHF=Z/Q=#9=3R<KC@9W.[E97P@S@=?G
MR>O+1)99"[+I7.;<TI"7QZ7<NERN.LQ;%GCXQM$$98Z'Z&Q-5$]=4:F/;K%R
MX&BS06W)?3!.Y[A:XBCX8C#AD96CP3_$<*)\H"$'1/QH'+%=W/MVN9?[K;C6
M1R%J&(+C$#40D2-=,-,1_T1L,V-[O4DY#AV7,ZFOT<;KF5P$ RQ][JWKH1E,
M-%'<+,%+%Z7-&N(C:SLZ*&H6*0.Q>C:/)\,) ,\QA9T'3:D_W)H"MDQ+1Z__
M!045(=0H&LX08C6*L*W@CVH.9-9^O:J>5H<UMC#=6):Z7Z&LHB*N6HP0I G%
M*YNO5/#'K5HI#3>B=9"F$*$3 Q&FEGR&ZW\_&I8I4KZ>8O8^IWU1++%T;LR
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
MX,!=9!X-!M*2PMZ%WSX\S&RCECZOC<*=SFH<+A"9<B3\"XQ%<+ +Y9DEV5T
M4P&[*"2K0?A?^/]_P0S'SG[E?>ZBEIF U5_2H^W@1<V+'=:RAZB28++P0$!9
MU%%LS4S2-$NL5VY"E+[#P;:TPC8CWWNV'?,?]=(N!-E8^1XC(-UEP$N#'+((
M<]&R/2'5MAGB""IX2D2 XM]]\XAW0'V[5Y0PH8KR13'$4GD)B';FA52Y5X$@
MI!4;J>.\BZ2W10J8?'9 Y^PHRJ<1[J(Q(^L$D-=63U_KT)?7Y-:Q4KO6NG?2
MV1N6^0\)A(QI">96P29+WZDAXGX";/[ &^!J:JNUS8?C;J1R[O+S:#[]K]%Z
MNIB3T?R6K![O[T?+7\CBCJRFG^?3N^EX-%^3T7B\>)ROI_//Y&$QFXZGD]4_
M^S+*PZ9/\XI$)LHE07VJT7H,X6QU\P+V*49);S]X)O@^91@9?#K^T86OE/D(
MZH$S%G Z=!MFBX=\-'(Z5\_F\<31<&,X9OKH'0(3=;T6ZCY3D7QB7*Y,BY&S
M%N(J8K#J\+1P,0W$:FCRC-8&Q(PV#J&X-CK@8:X5F2I(X*>4E'0Y]@[F@,GQ
M6Q</6^)7V7MY68"0/)'TKS0!F(@AVLVFU\]]_K%/E@NO%]6:4QO\%;"<]B+_
M,S"<>K$57FM$U<'FIL9)NZ4QNE^4.)Z$6IP]7QPS6)RMOC@!CHKTM4H?;9 8
MV+[35<!K-.$N7:TFZ];%RGKS55Y)67^]&[NU2)C!'&H'E&RX'.=VZ&E503^U
M0)3X "*-6@Z!Y=BO0^>SVW)85'M\L@B+B$$:L#BW]4I9;4=^M<=B'&2I]&ZV
MBVUPYR/8$T@OABG C.&KL4'S@<?]+Z;W'&1RJYH"2YG'?6<[-[[)\*ZK=:K%
M^"@-P@0$Z#&FP,@ID&\P!PVO))%.SM-+GM1$7MU*L<@BB;$%T#4)1R<XO(8U
M$)1_4#/@>1TWKW:1XBZ?)D]4ZR_SDKY0D!%4M51\IW"AQK[K@8C@-)B4)4?B
M3M^]97:!-- N<RS*5U#:%8<1VZP&ZC*?B7\&-Z)>+'7JNR "4D.>,(O-M9LP
MW)J3CMT; ;7VI?$#.C3_(0VC4YB!M<<ZK_5*4FA$!;Z9(MM1VFRS7,6,22%K
M4F?BU[09\MA-SO/94 %*I)3^UA?#9%A"#YZ]SPBN76MU%#%E:L.5V8E'T'1=
MGS]SEP"GT/ :*?-<??2$4%97GNU@R7&M^>QZ#2Y_H,[!X'E")K1T*.RXVT"J
M04"6;$.ZKX51>3S*9!>$ZZ -.XBL@@;7HWI"P17F#"0/R%7KJ002/%9/8 S*
MZNWJ1@9B_]83?QOG('"J1[(O0U5PL6L_J*])?A*PO<"7&?(5:&V8V-QFU!YG
M;'HX@DJQV'WQ'0?]O72Z-6ZINW%,#IQ3*X*;DT8V N($J%^1;4C_DGAC$;86
M,;;([65R%3N-93:M=25""^+[BCG^S<4F6C9\7XY #K@B/W^X^O#A0]*->T4^
M_N[JTV__E<N8B%N#F62^YX)$SAT@AH<A]UPQ(S]_O"*?/GSZF3?Z^-NK/_S^
MY[2_?QKZFL51S*)ACU_%@DWY>G1=5Z49UG1TNUSF.J^<4ONX:[%TN9QU$BQ8
MEQM6R$CK  4ETEK&SZA@3:T$SC_.5&B%C-G?\/C4NKWX,%C]_$71)88B_,K7
M(5>+24OQ"1<KK2I$,"$2S.BJ;45'K628MJKLQ?&Z<C"16Y/Y'MUR/?Q<V222
MCQI8C1,UYSCC1 XH-/^+7P+]LU&<\1QGO@R;<!G"RB\=A.LEXS3@2(HCO=BE
M_KU6N'AJV(K &Q:#HF27V:J36/).UB2:2)J)5OTJF&7U][Y]F2#I(0M KJ23
M2_KN:J<BZ4ZRC1SK*D@H.%T11SK5G&# RV:?I7$^#CB?A9S'W*0=<'[G.Y;I
MB2CX._,[_M0  GE E2M=.TGW<GAA:6PHDMWX%Q^XO9,?&(QE:- 7#Y2O@[/8
M?N'R9AEA 0\;G87.@5&;Y2IFX]&YPQB2]IW"LO99F DE$V#KR#I!E3<]OTK2
M[4B6:8ZOE )^4E9Q-1RC#K/B&F.-%>]6FSG<<H@[$'L,]@LUG(FUO07EL9:,
M(;.W!5&"5-$B1I#N)?#"^F,CWY%>YSI8:15G4HNOS&V+PUR%15BZN"*:832*
M3JRSJA?7$;6H-O#7/1JM]P9ZE3I"/&IH0_7<.[3\I7%)V\V[:)8CIF]93FF@
MV.EL\QH9^5O3LQVL>5_KG1)D"-(9Z'19=S--($.']JYZ'WN8'Z R:WA-C O@
M0[^=0RY8%PGP#4Q>SXB[M,FS^+PC=N'6+TZ1W)$"Q5@?J[J/^H)-\Y/8'1T/
MLFOXZA2N)+]U@:Q[V:IVV,K=L5:AKKDQ8&P<3;A*T5XWUHP"-R8/ZG;7=B4E
M(#7+6='"!/9MB_)_"_S$E)J0-HE8H4C XMIN5<5IC\68&4=G-6+/(4^QW>R]
MNGL]Z%9>Y?O)MK8N<?VGOZ$G QDSW:/?\C:VP!J+<!66;5^DEFV_-.[.J]#>
MN@$R@?$DU:P;X0:L(]E&P:LNC!%Y&(-P"2W"0A(F[R3IUL7&NBREOFM].G];
M.&RO@!T6X>05G+3U0/9G9EO[-74.&$]^;WB^P^533%=6P>H!&.W40F/O'5"K
M\S!_^O#I]Z^"*7DD<:QK'(S@:%=$CG>Z$J9QI-PZN]1U*>55P-P&7;*"X 5-
M7NT(IW@ERJ*Y768ZQ]_;*"SD T_ W\KKXUP(3+DYDE@H%UT63V61+Q6;:H .
M8FXPLE/$-RU-]U<9Z@GR9BWTMPA=X@#A("D,2%\25RR-H25GZ*$SAC 6=V.H
MF,^$NZ4!/#/@96=C+A]H',*;Q/,]>O$IM<-M61]3R[ZE4+P";<BT3(_.$'0D
MGBU_<[HW_F8[8V:X=6K-A:-<\V&2H  =5:$+X5Z8$ ?AZL- OV>;PZQ@8>-Z
MGL345P/OUR!3$#.U17%[D>?$0P#E^*U?M*WS'PO-$L.)N%9MG*OT+/?P_'<0
MZVOL]P[N$D>)D,&6:\REKQ?+KM-%.Y$*X_PKI]T% &]CC+%4GNS.>5IMGNG6
M9Y2'8)>'U!7Z75@Z4^2'K9XI]4;6=K3=<N@A@X7@M\V@9*_\P\%P3C* 6\?B
M+8;B?5O*\V&,Y7'L4N.XRWXYY[2F\2B&*-,JIFL[_,2S5.]R)8 K+-+7=;9J
M&PSKN:NE6.X\A[7A8QO)WPE8?+I$7ECI;>ONII:^\*#\T-3B*A+>>3<G^<<&
M'R[NHI1DM?H#VJBOA'6EB<G1.*R29#LL]:2->,71F62+[M^: @S#9J 9)U\G
M\\?)%1DOYNOE:+PF F:9%_N834<WT]ET/9V(?R_67R;+L.7]:+V>+%M'9&YK
M&>1I* 7BV.&N(\2'Z? H&4>)1(AD8^WYY20NI":MSVA7%_=>-VA]73"HK!#!
M4,1V0MG<1DBB&-=701)1=V9LU_'P=/-ZV-Q58F--;I2@',=VQK;C4%[3)"QR
M7#\Y+Z3:VD9WQ5;X 8N*XC8O+VGSJNLP&DB6.!X)![PBX9#=Y/&E&_-OZ1%F
M9#9@9](I70HCY5P2Y()92T"(I9=.(UMMC':#P,8\ZR0&B7UK'(P]'1M83/[F
M% !*U01$P7$2J-=;/A39\+%0J@KAJV:&[Q@7RSR+\AV'1A>C$#$,N='XOEB.
MXV&.E7>\@W R'0WPSMA040.I7J;'Q/7, ^<//EHLV29@RBZ%F>"ZC< T7A&D
MV'*-J*99B9:  [7MVL.P$-B6@^D?R(YKL.W#+QD.6G 0%X>[-AH4R:,X08@%
MU D&4,,<R1.GJ(9\]"5JC_V#SPS$JA* *T),7.Q&6_O8M)BM:*)0.EH]DD\?
M/O[N^N//E\R>>NJ"821NS964MSFK<JQ.)>W U>D@=I1W>F!8R=/:!G6&:U9S
M4G2!4:3,,_ZU&L;=%'GB]<-N#-<4074;^*3JGU).]#*FS;09$TX0?:V29#?*
M7&.\Q$2HGGC"[%U1\/ZKS> 9-IS3G<G@=-0Y48(@"2@207+P/+!>IJ]NKCGU
MQH;[#!?-B[E%Z?S11>?&U,*PD4B:7!HR7Q/%]7!XLF/V-PG(9ZJAB1&,_<?7
MN0QRZV%PPE=!#8]*RSN< 2S&CR28A)9=>)4.W]C5DY#JN1<B-=Q0]Z"K.*;!
MZI2ZUPZ((A<Q8,"+GUYMLF7X^K895\I2>IE1.1+>U<&JS-K'_NF&]625T;1B
MHH9< C@ AY2#T;J*O_*?7/IW'^8Y><'HMIK??DB."'I=?<+*PW33@&%?.:MN
MACQC%I]L-Z);S5G';5[=S5Z'[3:Y.N6"9B.>G3VU-FBI#D*P:GX%VAA<QXF,
M$JD8W_K'$:!MH&@L8SML:U,?ED[(VD%41T"S([RI9OA)E .W EH=52-KA ^6
MOR4=!,Z6+=XM8P1J!5H($I?/5"@;:=&:Q<&: ;SM8(O +;CERN4UU=RI)8Q:
MP%T]="*.DT:D,=# <5RRQR':ST8?P$HH^:I^)3PYIRM1\\[%,@+*S<]G]D^P
MF%%_%-=51<;44<NAXD>LJQ,VM?A1YP%R$V8>3(NO2GUA5B/6?CQ2DTPPY<$)
M:1*=F<X$1CX#ZGH/AKFM'^++21',$!WXO%ELRD@&4^O4XZ2C\JA&5Z0/,*P'
MQ]Y0NN7U-E8&QK[>&YMGTZ+.2?==U,/Z%D,(DQX\UCSD]2C=&5S&IVJ<"V67
MI7&ZDIP&(T1=-JUJFI\-TUI8_&@Y_E'FTLC4<03VATO\5%/]Q"$(/)ZF/H@&
MW./(8=H-*6J#4;F;91ELW2%^.#+[1.F*.B\F9C^EB0#X#M\Q^YMPAN*_T&:\
MME?4\QCE(D 38E-JRC"7 ;B)VK.)&%#(2Z]V9>(^BVN7$]N2Y>JQU?<I8D8:
M-6BN&PUYQG%SW:A;<]V9L\XRU[4_^P!)($B01 %D:DFQHVX^74B6"S:H!$G*
M7:?1-<J@GC^7QV+G:7,-<1FIBY'#7S=5,1KB*1+L%/"$5_ U\+015"^$&5:T
M-]V&1BK%!,LH(N)5K5<R5L#Z2DA5J!LY6*410R?;K[37+'M,XTR/90VT/EY_
M<MT%9]R\AQ@7L.*H8'BG)J(QN#PEJ?[/?_G73Q]__[^YIN:=6H_!:(XAN4N"
MR!49>9YC/OD>SZ($<?7!<#H,GQ-0IS>(4ML4VNU0Y\LB4[T9\E33\6A;G7(<
MNC MI;26K!SB%&8EDW8D@S;/82)M-(?-]KESW8B#^N8T1T1(NMB%OS[51<G'
M430_^(F(,2Z7.9;+5T>87&C?P1DL+&$)C 1N-V+Y%!8D1U08#BN)HE$I,(/"
M!)\-ETK?W&7RK!O,9+H(L"A\LZ;*/U!#R?#UUNV@+6^SIDR=QW='BA96%%CL
M/MOV%D-VI*7,78%H58=E7BP!F.-TN5U;429(^O)XB^2F"]Z<;B(%FF."E=J;
MKO.WFM!$,&E+ ')N#<]H7?MHB@6E>R1RSSJ,71/PR(%KD:,D!]6>%7HU!Y5I
M!LM'0[6Y-RWSX!_($F5KIGP''4%,M\JQDE\D]'3HN.6#1<II@X[Y1*4#6 W>
M XI/ =YJB+:*]>]JE:PJQES%A?@;0F+@>+S@7F<EK1(B;6WDS9@,RZL]=0-/
MV0POZ:)X!VQ@LN@,I*2]\M+1.II$0 B]D6UK$,+@@!?YDBH!'L2\O6,<ZJNT
MXH$("1-)^6*88?E\=..[:Y*AN'TH@[&.$2748X)%PI;HC.?^JUJP]0DC_4$]
M6%@@[(JX.,)%<IEEJP]>9*1/^ !79-4-FVEX/W5TLNRR"ASMLQ.-K"97V45S
M,"]RJR$8M1\9U\P&L1)[T[HS142 UB^L*@EU54RUEABJYMJZ:,F?FV1<X9(:
M;.(B<O42?69XD.Q[XU?*\WK=FF7/TT,J'1B24#XF_"P&1?WC ,-BO*48]]+7
M@<66X$Z/M<31B!B.++4EP!')PVM9@IA 4N<TM"ZT9&33I]3>[0I4P ZT]?Y!
M!5I>!A8^GCF@ FEQY_V!"D1" !(2_.3[T11S.:<X;C(ER@G%^*,8X0KK_,@Q
M6BUSW":C3.<Q10<+J;=?YCB1D(1V[B7UX$+BKWQ3B<-"+XO$*;L$AB+A6-VF
M#W?#?9IV>OT4706CQU6HG;HV,RTZ]6B]^#-]68IS_YZ,1.X?^2O.@_")O,*U
MTK^A.BF2G2[3C>_"8*X[VH!X(SRN<,'=81*BAI_?='$=&(+3[K(T0<N<RMU7
MHQ!M&"S*:).[.,,=NC#X-3KWT7*WV-W[S#,??.=HNRKMXRMZ89@+T\2J[[5N
M"3$*]UT]K+ZB1,!)7BAG+,(4X@3A$$2.H;S"1(Y"'BZ;V]@[&&[E@7-]E%R[
MDNL7R;7:XTZ0K^$S$OC'3:!;8T$_@6\\Z*FSZ*SOL 3"\&>=@2\=KGGKBG,\
M" &1&3<-HM]R>A?!A&[DY@1$0-U1!85<!A/:%QQC8F,?#A@2V 4O*C V42.X
MP5S"9+'@"^.*%3+4C1,S]&K+JKQ1*/V_.*9'%[O=8H?6)1G_S$,L:@4TA*[T
M#;_U$J#ZWW#<:WNWP]?5HA[9J-AK#OOT.I:$)59##IBHKO 7?3FXJ4TMQ^CU
M+$?L/=2615;%KGI*6G\_E3(#:NR3Q#W1U!I9B!AC)6MI#!I)8-!MWS?6'EMQ
M)5 ;X4K7"(D<A(R[X#=6 K:FC5#6- C(=6C_RL2%#ZUQS5126\P_7\^F7R>W
MD2)ZD]$*?G,W&NNE]"9_?IP^W$_FZTMF/G0(YN#CZR;/KFP6("^BV #* L\Z
M$ XWY0)$]Z!RW"WIAF*H9,T0:3F81->1Y<@"UQ_W?1V5J]"10V)V,?V^P>\=
MNJ7X#B][A5C:X@0CA2YB[D0._*AJM,OF/>XE/N^ M/Y./X2P<5R[<NMK(AI)
MH>VV#Z/5#!,L:_X=(OPFTS2YP B7=A#5WF"Z0&A63T_@O!)"-+_-@_%?P2(H
M%3.#Z:@*H?U;RRP03CW\2KDEOF.#O #>$B!*O(KJ3LT1\]_\ZB[K**ZD M]R
M@P'PC 0JQ%:,<5D<)E-#B_CC]D9IH48ST9%13[S9GSY\_.UE<<\TQA<6"2FC
M9R(XW[>7N+$9R'CY>]NNPR&(7G4,RS4VPF%H;FJ=V;"":$@43J?9'@)2HZRP
M&!<:/5[MZ#*XR*SJ&M^3ULX7+ZR,P0 -Y+H@&ZYG;D#=N*<&JF=MIH37G#G+
MG71_.6RS)@)DTA+ 9MV%<C3'%.N5'^%\S)(?PZJ%8\/;/#\>P_J$:ULBTX^.
MJ)O1[?@93^K"V=8L 2G)H3'?0MT/":KJ6AN'\A">X&UJ_S;O>VWB@O=?(J@X
M0MG0BDORN9#'HUY)<FVK*@(D6%TQ(\*G]*K7+^X8CR@P&[6.W,0/_PS6<8-S
MNO:/Q C7T;,5Q@(QTD[I@&+3Z[BLT26TP>CKHQY][:OHZ[1P],MEG(4\5XPX
M[T;Z,KZ+''0M!^N\XAHYN6DM5[]IAZ&$= Q\",IZOEJ[52[:X2Q38@YVBKS3
MJL;]>$7V.$R[^AE\%P?3=6WG-+>]!B3ID!Y!@H.?.TM,VP):W815-#'_9 J6
MSD?K+Y?P8Z*,BYZ"M)2A.A<:EYVYB+@)DX#:KZK9(G-Q1><U,2<_)>G:ECAD
MG,'4%"Z><HP&*;A@L_!0V\V(41!7(D.W 2N")#C\6;/HA(DDUA$D1A,<Q+.-
M%">RRE#[)5>+,F/<K-08_I\UC#&RMA@A<#[0442]YDDO2/:?@7-Y?D>,D9#Q
M5LNJW\KS]J!J$-1-^U0$9=TV+%C0:@ID8TRP?N8?V$SK@MCV9>NM@2J5:>GM
M!)\6OC+[&\8 8!*#[3]Y.Y^--AM>\CKT^]:ZO-0((J]!CD$,.0CW,&] 53(]
M'JS>OEVB'9;5K:78"BF!_!-9@K%@=M9!)<=V6$V4:JG$<^?E6UI<@T@UEXJK
MT%F%%RZ7?;']@W%G;*3]H;X\S F2D.+P9\_2)]Z-7-P(!S&Y6'"R"XBV+A>7
MJLS>2,C6>'%_/UUCT+"((1XOYNOI_/-D/IY.5I?-9N ;*EN!OD, UT?+=WV#
M8?+1PGF$.\GQ0(#W3@J3OZYX)NF+[":X$+4AKCJJ-] &BZPT=QU)=5%<8H70
M46?G0F<*HQS'IB.<Y68X87$F)(1R5VC1Z4"A=92&3-S33LY7/%GUUF2^=W;@
M?%KBL*1X(8Q$$#(%B9[3A\]E1#=BQ!GI,H6X * 55(A606BIU?K1:X%#IC%7
M"$ [:8]%-(O A;3U-YY>;J*^(502U>M-7 0/+'/ZG07TA0\I!L$9CG,"C937
M)9Z9((@*M\W">G1K&7LT,0%OC8T^SA5AX4@8NNSC$[RE[L8Q.ZE+U-X2).4+
M'A@8Y7X6Y1Z&:9OAN[ 6@XKBXFFU.(5G\WAF4$H:&H.CD[U(MN06WNE%)0+V
M(N2OVHU/28&&%B$JV<>W,4!O53HC_R!W#?+=./O:";ZC6R#+.': ';F\.@7_
M;II%=N;FMFH#0V/H!I/ZT[V,$EP"HTAA?^KF*0>YC0)F411VVNAH@T_4HCO3
M(UN?JBA1QX6CP!-7Z8MI^RX[Z17U) C%!:^1<E*H08@.9QJ!8E0X)&JD"V8Z
M9C4-F1=GXDD&IVO,*[011X[80=&-TC?!_\_>NS8YCB/GPG\%L8ZP>R+4WIFV
MO=YS_/J#ZM93=G6IME0U\Z[W$TN$2MR!2"TOU:W]]0>9 $B0!"E*)$&HVG%\
M=KI;0 ()@$!>GT14"4@1Y4STJF2.A%R_]WIQ>^HE.!/0'2(=& :VD I<1I2Z
MH.%JL_7BW_JK3 98J9SZN?'%#K-D,4%*E!P&95OJUP%-'JDRC +>0A"N@IW'
MYFN^(7^F7GS#I<H^>_FTH3'U@-I[X4[N:%%A&08L#!8S@MP2($^ _MA\RQ06
M%359RX'I!PRD$GKRN$E3R6P[B.$WWDL<K$1TEU80=*AHR9M_]+:[_QC-4S<6
M"TH)+"@CMOLTH90C\%<1A70^/0.?XV8GW-.T")68;R%X K%Z8RZ;W05_RP(P
MQ?H"6;4W4"\7<^("QL+#T01<;XPV[GP\B;PZ<F;&J+S+4PP\:] =8A22#T.*
M<216[LB@S&.R7,+7/GJOQT5/E$^INN^312R==5HTP=TPV=5<G,57-!^++&+E
M&BP'%=Q9RE(>EWOVO3)>1<H$^2DM+T TW0+DBAX6J??8YSC*=K?ABF40^ >3
M$3DCU,\S1OB\D\"7?^DE(]N"#;'-I-)FY7 $QYN1?$2B#UFDXB"L4S'J^ (T
MPG8^>'&ZU[:BOQZK\$"1L@ZK<E8<L0/,3(3O(6.?^N]2!1##6E37@.RP=DZL
M[5#I7OF9,G\=@7F:WD>I\7(9(*:W>K? J!_YL!]AW!GD_#9<,N.;#.TL1L,=
MFZ_#\M Z6(-0%'9,F-A-%"_%2L!MLEB7ENHRBR'5LH^#4.;G&\X"C ?>DNIR
MR4$M.0K'70FF+8+Q(!Q8A//FOI3'(\[!A@^%R0QP#L;/8W[CLX[B_4/$@M5^
MD-#RG.:Y3)Y5YCTC@B#YB_ROQ0#QY6I#_0SJS196X<5:MQ8/"-LJQX*OZR;#
MMW<>AA!@G=N>23$+\AP"YA2 +9#Y:TQ'S?NSM1RLOA(:Q_QO9<.Y17C6 G-=
M>M>P"NA]Q.^>7SR6]7)SY#1) D1G)(S(SHO)&Q ^%X98E9>EX.4>X0_(+V/R
M(C"\O&0CLK2+8 C,IQY 4 3:JC"C%FHQ'S^&9&BN6,$0:6+(CKE_:,ZJ&&JP
M92+68:=QZ.$(X^.O2[\A%U**I 6 Q(6(<OPR.K/W?P1[(7T%%3JW#BBBB8#!
M%9'J0/B,6*M<':JP+DA;6JH'PI@C?\LQ^8, Z +N[WJ]IBN)+;!8S_T((W8%
M^A_U909K_XL%G<E$D0=6Y\MGP*'^P\>?_N7L.56738%8* :;*9P%X%<.."-J
M2)4?;$VWU.)K;_G]$;X&X+%!\?^+]]<HOF1>D@R#;%(*MRT&R\-T<#R" Q(8
M\<Q99Z=Q;<\J6"#4@<L9KI=-Q+A<G4"1FW1_:OQ#R41X.[_0RP,M?YX_7O^\
MN+NZ?ES^XS_\\=-/__X?6#+HZ<_GRJVR(&J(AJI.4+JW6 RJG#N9%W60MH"\
M/-5BS<\COV "CSU$HOK6];>4A@F<R;L@Z;7;M91+K;9$;B<J*F6!JJ<F0]1L
MR%^*^1"8T+M=.3;2HEV'7!04)LK1U@XPB*[#%+X;W^=M$CZ3U&/_$^PN([^7
M/BBH$DD6S!] F'#*!$B?!T-L4EX$-MLFV.T!JDN\9R>),.4"*@]QE.R@;(@B
M[?S\E45%DE+HLW:P\0:8?Q4:SS(?Q3?!Q18:(Y@TO?)2;P #L_PT-,*0K^J-
M;4D?FB4V*3=XT)Z"K<BB>%P^#V7R 9K2?L"IVC#U#,4%*QB0)IY'LB3/5HT[
M0_%2^?PKFS*R,4=<8EE,T_U%%$+-0(AB2)XBQ%>GCQ2P3B")1]Q)>2A2O]IM
M,!QY@?%$EBF7IM-(0+I#>I(8,W^ B@"H<U\%5EH '$H6Q4V@.,3[7X#J4]=P
M$N3E&JN%2-1"J'HCXULW;V6-DRLJ_GL;*C"X!V]_$GZBYG]7Q,D'1?X'J,V6
MP\W)(2QYVX=GM53G6O*T$[3.CAEVU):-GGZ%<(,2=&X_0"J9@"]4!,]A^LPX
M<VOVM$'L2-;M1G=<,Z6TP0;R'/H0^L3/,?6OL::SB.7OY[^!(?\O_T;X<:/)
MZ&[[<1FL6 %QK%+":<VFHP])Q)@R76-RO.\FN&]Q* N0H621;FC\M/'"!;HO
MDL^<1)K<AL*ST>?:04I\83X$$GLJ^>%[79;<>L''_FC(VM=F"+60]'9RED+K
MF2ECM#93@E,E*9\KD9,%I!.8+CQ>8L+C*^&_4L;^.XR^ADO^F41<H+M-DJR?
MZBI5<:#\\3<@311M(HB?#5=L8H80[YQ?T-+RW!<.])'*\O#1&F*Z(&-EU%,V
MP/19^\Q'QE\4>:$TCO</HE[S (8=)$<4/==GSDR3MI2/VW_VU?Q;Y$*6WA[9
M;M-8TC&70^YIKSCQ4=7/\5A0&D);J<Z</E0U.C\6CZFFR7)60SI^H9TR!J84
M42"<]73 JPKTI1)[D.CYL*-?T,DFBE.1W;F+Z3;(MF2-[EY*9N0^@WL(GB%
M,_48&S/L67>5K"+(I\8CA9[H2U!7XOU OMX2?87' S$Q8A1+?M]!N:SZA:9C
M,-=RE" DE '0)+@,":CW/>4ZJ5P4!,^*$]; A W93AG-M930@1S=.D6[[N[^
MO#0YO5.-\LA>K\%X*0=0&+?G3#@IN>FL\V%,^Q1&LP33<;@^YC$1%M&',T5)
M5?'E+ZVOYWZ.7]1S=':5[&1,:96&R(0L,/=(K,7<0NWI$1FN%FLV[J<$CL$=
MWY8/@;5T"?"I\F<HIA=9$H1@23X2W-AH;+]:+@G2%9&"9\.,*55,)458@?H8
MFA/YX>6)'AC7@(1)0=D2W+3$IGNDX!@+PE<M"VGQPH+7'(EUQ0_24["%:L+K
M)90N7(OK?L#$SVR[];@,S#^\?#JEM*QB0B(YYMI;;:!UX6.1 &8)%!))O-?7
M6'P 8!3/U=^G_?CU5"=>U<):";.8'5S.&5%S(6(RL*KZ=";(,*T[Z1N-)/VN
MQ?Q@>*.^;F/RU2D,P0P\.1./^OEZUGZAD"RE/&N_TN!UP_\^Y_*V]TK1CP75
M3VZ\H'^"LAB*?'A>7A45?L[8*3GRTEGW6LK]R;V6,Z)X(I(IX=@4]7" KW'S
ML<&BA$#2#YLHI,)DUP]E"8H%(S%I '1YYLSVI-4'<Y$%#)#1;K>[.'H3Y<O[
MJ[HZM?/A0&Z"(DATBM822Q]BT*[2/=2'3^<A7DP[F,+=$/"7BOJ,(/T\YVXG
M('OO[.$>#L\G<XU%F<8@RZ<\>=]DD88+452CGR0FJ9X+#]7L;J1*5&49J#J@
MJFE\D*1'EQ4^1Y'_-6!'ETRHEO96=&P7[>XW?[TL=\&!M8+;?9G0O>K%]*V$
M=Y\\93U>3])P=:[,SC31BLDO[!6E?@(%!0"=;;&N [;1=+'6S.;\O4"9]C)*
M^EFNU=BBW  GB9!MH-%[!B@W40EFK?M4\'F)4+Y>P63>U4JQRB+!N 1& 4.W
MAGE(^.#BWP%7G/^FH[5"<0"A@%R^NP6J&,D'/TVC&]$ATB\.P)@%V$<#)*@6
M!,F*4SR+^;/:U(&8-7A*#2H!QKUAT=>D9SI$"?< <;N0JJW"*?B-72=I #XA
M?XQ[^UY\.E2-,=F5/ ZKK."2WZ8Y^<GNU7&X--0?Z;JG(T<R@"\@W?]"-\&*
M48Q '<#]+XA^E%0)DCT/-EB) U+BP%*<S%"L5,-D)$MODB7 H=S;R(6-MA1*
M^V7I)HH'23P4-$7]/D7U7/A@S2S8J_T=OWIA\/>\!D7$H/Z-N.(>>%]U9C0\
MH_R5/?FY-B3VHN,1,(L!$LLB#M84[,M]U\<6I3CRT?'>U\<O SD54[ EV@":
M!%\2%5L#H&CP]CW28/N2Q0DX?H?!$<'W/1\&_P8#$7VD\^24'<>D/?"14;@U
MH)'@H=[F7,/?0*@AL3;8Z&^0C/YXI%#Q"]PG(<8ZP"SOAO TJ#* ^0!$&\&J
M&7X,3IEK3&+\TT,<G6"3+T?;(B'(MX*RWQ^@V/'XAOC3YU[.@:[-7!AB9. B
MANKDD:@SXO%/3\+'.LPATYD3)!R>;<DLK^W'Z&ZJ6A7E_84J=]PW4\.MZM#]
M^&*'61HYA0.B):[DFRA*58C+LU=-)DE/U;X0%%WG@$TQ>9&ERP<8V+J!)"W:
M-@9B@6FSG\*N,1 ;U9QI9,>V34/@T@@E7CKS[Z,P4O'&IZ1.E^P;@C[Y0 5M
MB-.$H6;@1SE'[EB%,6G^^""I_P!U4(H!9F/F59N3<]7,'KFJ@IHVE-V =\-[
M/3J^L2QD"DA_A*3#G,X0:Q*=+W<EQ0=IY3A-@L,/NYSVZ.+T>&RJ%ZN:0)X?
M81A$)NIBD1@YSJ1%*7I(25UJ4(PL+N4H:=L=B_:4RO+SYCAG?E^\85BO@$_%
M:!C]=[!H\ _MSUAE/'H-@[_C:> <86$6_"=H]U,_#W!.1Y:9*:*8P<PQ(U]5
MH+$G XUWHR+:G,<2*HN"*;"[B/W&-T%,4,5[H\$,JBSN12U[.:G\K(K*./G$
M)HOKO-A#,E%?90R+N8FB($^EDB!GR!<[P)*MJT4]QKD[YQ%1')31I*C<*G^"
MTQ0"2J1P$ S@^RCD <T'!$.1\E@S]:A8](Q,M#S,W95!S47&ARXWE&+F"U;B
MX3_PFS.1@3/]M4I5U0E'$9DHQ3A@P+.!%#\:IZP+D_.<23L:Z6C<5G14Q76"
M7/O ]:JTM2LQV/B.D+P^Z<'DL:0I>^RI+ZIS7KUTL1:Y7:0]!RPA%_M2PU(2
MF,Q M5CIUO+2L<JJ16O2)7,N:4V=&WO50%OYXGT+MMFV_\TH"3D[5U::IK7L
M*5-Z,-_J(%FL'^)@Q9_K ;P!QLQ@'$5"7<(XY\DI.X[)D254U._U<!#TI0X
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
MRWK4Y$$1(]X[<E>\:KXNW]HI.3P0*[4'^FQ9,4GG@IPEWYUXH"X97[3%^@E
M1;-XCR[$NYYACH(RET*!-E:@E-2EA])FX-_G*/*_!HPABE8YK:.H/M=3PU)C
MH)!=S^O0J]S9J:=37'G),GL!,^!3!*6(LK0?AHNX E^ +DD$8:@EZ@O2Y\)2
M_4)/B*1)GB)R=5[<5.6_]CT:W2BC:DM>T9>T ";N%925%Y'T.<T9"7.JY\$+
MT]A W?L*V=#B1&6<_Q<OE9+=>3"FRQ7'<&<I,\A@<REB9>"'4OQKI66?M6@R
MP6B1.OAC)=*UWN']+5,]=TXL%E84I!5375RLS0I;O>09=%RF$*3>X>H4N93'
MK WE__@^5^6 8;/R!<T.?5:CONLUU0!N0RX14MBO?AZ)EY0$DM#YL-"LY. [
M06[/CJ.*N'555S]13,GW:G2!2T"6WW&%4>!0FDJ>WM.4JWC>MWXO?"(CCGR]
MX&E1P!#K;L =Q)=B?!%F3+;EJ56UEF"0'Q04I['6*\+WHZ+K?9M!C28I^SP
MYBK8PE-^&[UD*6:M<&$<9"X(-XP8$T6=QOT*BC63$6)%^-_)2Z-BS0I29S#[
M$EB(%X2 &%N$S<5GP8HQUWE*9DK%E-'D@TF?</#[!Q^7"RB3,OFSXXQU8,I.
MO&/M3;R#HD+]2KDAA7.8=8M4<CY,=!!$&!(>70*1L6G)@[>'!^ZROS5!4222
MY$Q9$2SIQ -QI">.*8YV@N1Y<, .;,?YEC/@$A@$P-#A*QG431R0^IWC_*6$
MS\1DR2 ?GI=7\&?1='3LO_-=V\) 8EC9DAWD?]?4P<H;.2NNE-RH/<@PJM@Y
MQJ*O($[W><R,'MY\")*/8>EM&Y);HRY2L.8I@N?$4T.B\?ESU"SU&H_C^!R"
M$4Y=%2((+EC)*V4 4ZFB/)-O0;"R559Z4,Z8QM2MQI0BJR[ALV*J?#T>X,S2
MO:C[1 M?Y2.5AT9D&8>K8.>QV_#/U(MO@K=>M\JG'S_]\5TPQ<PN8#G>?D:
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
M8APVU)L@:XQ.$5I5-_E<9 E7S)-$"_=)+O;:WX;&O>6R.@.P%_BK*CHE3RX
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
M9ZCHX013*FP%\VU!EM@$NQ9\I);FT]^0,N$]SR,X'/![L(<3>U2$A;4$F'=
MJ#W4VPEF&V$8FLM&MO9P@BEI52Z!&1U3#JR]X_1?GI9>ICU2\" %-+DSA6\=
MT<V)'512.58F31"10!8II<V^DX.=G&"M F']4M50"Y!*?,9*L)7X+\_\6DED
M@L#^F"C7X<>;7&42 277_(E\Y6>9WT!?TPTPYX4E0\N!IM-_T7>7-]X*W\2&
MI[/:8/*5G_,KWT?'E@&ILO2C&U\=G&0AW=;"'ZM? *AHC<_?282<6 (-T*6M
MYH2AF1/3-V7ZEW'DFU^&KGVGOPAT.Y62M'+DFKH%N6L?)W80CE.1;]"L]9C:
M3;\S*AQ%-U;QU?XK7:4)G*M'^C6*?\,J=&@ZQB_H<N,Q1KF.TQS><B(])W94
M?D,5:;*+?:5;S^EW_2GZ"I&>'GOS7JF0C589A:"CIK*$!SHXL6]:OI/F7>Z(
M06_HX013!@1XOOYYDK'(K44+7NO)/(',],?4EK/+Z'&;9@:32\!"H;@)6$,U
M^^KO3GPDRRRFZ?XB"OWF][?:QHF)FXM@'+BJM)9.,"'..M;O@L+EU.-"VAYU
M!:/5YHAN3K"GJM%CS$+9XEDD#K2],D<1<.#6S3^49)F]@.3V%$$D>98:[L?F
MMD[LG4KZ@ 3/(@C-M$GFEDXPT:L(3$=AH#O!Z0]H[2H4Z;NB]&KMB+:V=F)_
MCTE!,VWG,?T=8;@,6AN8HUL,S9R8?BFM1I6M%,%\S<::@YT<_*X04:VNXS>T
M<V)OI.J=<%D<T7>:+WQS2R>8&$_KR.L/.Q9\V'U>3FQ0[0N J8G%8"SZ6H68
M/**;(^SI<!A"0PU6<D/-C+5T<((E7;S[XJ40;<B?DT>ZD[DF:#(78)^W(>8S
M!6_F;(Y3"#FQ!+73Q_^@_DW!3NB?=>C+T(!$E397?^]TMD^F/OU#^ AWT&+]
MG @MK2G:T]3*B9W&V[6J:K9EC1O:.L'(41\; -L?@LKO17!RV]P\\X,TBB&
MIPH]:/AY\ND*4^'<]V,(7Q'_ =/.)[--T=!P^JO@RRYY*Q+X&FX"4R,GOI]R
M[&BC7&=HYLCA66X]QE0$E/G8E)I,?V!*"!//H4]C:0\SFY^Z]G%E/S:4L=90
M)+V%$]^ \DC7JK*:OH3&QDZP G>BPK%4@5//80;ZF+?C?Q=83@'Z\6XH)&!
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
MH9 ZKN,XBB\C+J-C\!:$"#QPQ3\6ZK\65]LQ_OIX>DXLR#V_^//X^08K0M'
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
M3J[MZ)A:3C9M[3Z$0KC'[D3G[A,>KNY%\FK'K$/7Z6ZO-H#H]C>D4]?)& ,
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
M*J%S+2VN+A3Z(@!7 J>77-^A[)/ /42BX 4U(0 @,(!I%( YAO(H0'3P.6!
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
MX=MHV]_QIN7K<K]!@1*LX 3NSZI(3WV5]E)$[555N)MQE[ ]Y/8FN>AG_XP
M76AC]Y.=<VJ[K7V+S(NP[;3!NX-CKP^+?:YU8F=-;:IMXK?S!AE$L'>B??QQ
M@;P$_,>___+77_Y"70E?7\T%/BN^QZ$STGJ8M@SJJ:7WT4=LM[R?SV%$R6!,
MV2.Q,?3=_BAQ9\7_&UG&J6>*W4\ROZT;&1XAO2R+!Q'D^[Z$6C&$DLR$^3L;
M(F93" O3<&#Q]E:VL\J4>Y=']T;\9!6WRS!&B244FQZA];"JO/.3KLHW_B[Y
MM):2)=S+2PAY!'A#E;_H4JE QP%Y"_R^VX>]M/IKS)"+S I@7_K%P LI/:<^
MG._^$4"MQB.G-69VU+BHTMD/5; D+J#12%_D&_A,5@&<2YKQM"*7%**81Q"[
MD9=)VH0U\/75]\B(J19*>D/$-34O8^!'# ZI_^(=[LW=(CVU+8N<;(NY+JZN
M^F3S,Y*B;Y$&J-Q0O $9-]J%I5=]F0*5*)T+CB+YPEF>G.@(D&+PZ)R=(_9!
MI=7&).$'X;4^%!:6_1-4:Y+K+G*".$]KG,')+QQQC29Y"U ,^3K8@B3Q,ST,
MB1SY;J-(W#3![@F[DQI"J2@S)X7'%$ B=8+]P?%]"NU0N^D[P7PQT(5>1CK
M8H.8J%^_ :+9G-Y)HXDG3B,DZ:*8PR^HL0&RA:K=4O+1N)=*(4P1RM7Y"/+_
M705, ;?[.+*-R<6W=F')3VJ%K/.@&3A'>(3?LM13S6(L6*MSKP%UVA#OL,^.
MPDV'PJY8M+<9[F@L/Z%&=AB*2\XD_'M%W'DJ]VF\4\VH\1)TX$%089UE1@T2
MP?^F!./.!V8:4-QSGA9&HX:ABQ-/G3_SL:=)0$AS%ZHX<]N)9]384/P1,1QX
M4N0BO<8C]PTX:G@[.#HUBO:2'8E&#9NP%]*MC!+6'6@28-%\BNI$Q>G",PG,
M.'Q^VM7)B;XUDX"LDU-.'40\G:K SC<(-BZWK#I,'!Y!DZ W=AA4Q?P%?),F
M 1W9EZE1RQ&K*8P:(&IXP$T5Z.)@-6K<.-VP& FU[T6X44/6P1)(.[ZC3GO(
M,@@V/>E&#45'Q5'$Z6_4^$F6'MK>AZ-&KP?3(C^GC;K\<T]##X]/J K\OD#T
M&=J"(/[)[/9J,EQ);"/A81!8TS]WXEB1V1=)LBT ^\^) D8E+DY_ZHE#2*0Y
MJA&R .V_)@H:E>[PSNX31XQ(9GR/Z@5Z?YTH>E1ZXXI1F#B 1/(3?#<H8/SO
ML;T']"1!OG@2%>#93(-"H!?@_6VBX%')3SCJ9P:38*1KAQX54/TZ0\6EEO&%
M/I5FNJD^+I )D"/PJ@1OJD9.YNFEQX.5\,T63]Q-(AA]5H(Y58L5%4Q6=%L)
MWE1-+U3PL-%T)6)3M2*065^W>+\2SZFJQ60\>\8<EL#*T?5^S8$-P!'MGL70
M"D<REC@.H*F8D!Q^ [Y D((F-36+1,*?,JS*-J].@M93Y9&'@SG'8X1()?.2
M*H:T,EE\97PO%8W238*278K>1U\&F'P6U'Q_S38Z*]#C* B7VYRKB[ZD<<41
M^;N7G)9IG$#Q*T)ESN+,=]!%A7 HB>3X.LO.O@NB+\\%)=&2DVKA&VI,-)5M
M^#.\''# ,1(A\_8VF)+HF;]YNP^: J\14)9=U<2$W,2F^C*'W'O.T?-Q$EIK
MQIN0KY_04&.VK)]@CPBU$DRH8!.;&W5\'].(G8&7HZ.V1=V;]>MSI.X/1T<C
M=TKPLFYT,TV8:FE'? +5K9NI-_W33]=/]T@Z@KH+_#]4Z[[;K8\=2;*X]>Q\
M1D712*;$16RK,1]0ILEF<WGRO;,7..T8TU86(%H?R?#NO#,J40Q55!!YCA]G
MAI(XV0#O_)E&,=(.R'CS=]:?UE.8!_/T5$?KJ.X<KZ+!TTWR3#/[1E,^)L^/
MW%BV:G;R+E<GVK-5,VQ#,P(ON"PJ#6>^IMUBU$%A(@:01D08IYUA$N!A#5TW
M;Q\\VYD$,H(VDH8K-Y4B)X&>F#%/['A.@KOQF'P:K]<D"\L$4<+EI")C.6J
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
MRV^4A%Y2@V-Y.!FU7)C=#$E 0RN%A6LYER#KBWB+^5-1O[766"'G1KXWLMZ
M2^5A4+'=5? &.>7N!_"_P&L8)"=R9: ^8]H!Q3^ $^U^A#(0*(>R:.'PP\3T
M\MT&LV?QSV%*+&_0:2R+ENY]2=OV;"P;EKXX0-%9WNJ;PQD! ,>B#-&W5 8D
MC]LLS"OIDC7]B=19ITC0_*[0HT5GSOTGAZZH%K:>,ODD^!GG,26BKB+0>0KD
M5ND]DX@45XIBKD1-(B95)8ZY/C:)Z$"E,&;:S21BWM3 >*<G3B+HJR.2B@*6
MPL3QQ__"]9[MR@DDGNOX\W/7_-PUX>>N^=W(C.E;7V]DI'505T&>+J],F[<*
MRGF^.U>D,[\!THYQ=35#"IFMPD-:A6?+YVSY5*4D,/U7I8+T!:+/T/X#.=LX
M10F+*]&45-@,)#4!]/C$B.$LF5IT^@W\S^\WQ;Z,O:]Q=*3;P[]GJ;=2L%]?
M0)1].U[L]UZ^_E5P"*-S'NMKH^H.*2$\@ULNS]QE>7L"((&KOZWSAE/\<$59
M'L+8\;]%87J)X1!^BO)LX;&B^2P.]75M\GJ>YV'_[D3)M4Y89*V6UD.?6GZ;
M2#,QY[U*WFHGO<!AZY#BC4JLUG*AC*.D!B/\Z08A5XV48M+TMI*A)!9B:>-(
M:FK:L:+2)KV/9' ?0M]'Z1HC,JCW3?093O!77';WU1@MPZ8H.HH)O RI@#0#
M(Z:ESEVZP;CTG3B&1)07"*"2/;N?9-(GYC*"M+!.3B J__#HY<&?919BJ".1
M3XN$476P?&REGC:W;S8SD<8HQX352Z>Q5+%TR;+R#SD#,ZB&/EUX:F-O7_S
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
MBW330@HKS])AFF"!36[O!@H%3@LN#K[.E.<GX0K2G\-S/#=-#T(VV\?C/5G
MQ&B.\D \;G\C8>@X3N>X'5^X$1-57B?AS"&1WMK:\22<$631'T-#'^Y%W82W
MN@U(X!E$Y4<S 2XX[D!TAE# 7WA?X!V.9LX;'L$6<_-(?'>N:"4HT\9M74Q;
M><=!])G/W1/8ISY8'_"^F(LH0JF8LD4\7%L+6Z!#0'NUD3>^/HA8$R?-N\5/
M[K'I/[!D2R22VUSD!H6?6N',B^I?0Q:TQY&^X AR-S6.DMJ&PI]NFPE_^'V#
M<,4^"]W_==!IO3H_O7-Z)DZL^??A$<.\:3;_INUDYMP!?H#R[-ILHV^J7.>"
MM :^SL-2K1?0J;;Q=W.9-_'6N1%.L$>BRYMS!E0O'26?TOE""V^9/'+(^TS1
M4M#4BG# ",DP$<@DN>A:;T3-M]YS4'.IB+2S!>]^2]$I*&0@5*&RC*J4+1DP
MOR=98&A^:'V TSVCTGFA^^>'GWA0O ?^-9L9V"_*TISKP\Z)CB"?<;:$=;"
MNAH4"L[9GV&[3#> FD/>$IO+9;!O:R.[VESR15)]6DBM=6SY*HY333LNX=.2
M$=MYY_RD;K8?V33P^TAO:Q_O:^[6X@NJ^$B1>PZC;[ OZ8I0]CG)FUHC&]Z]
M976Q;XNS__R&_#""(UR=%^Y_D;VMN$](WLJE$Y^V($E\KEVDM#9L X6V0M_D
M-W!S(\]%ZDW&R0,OB2&RU+N.WD<R?72FW:=_IEYR705PKFFF &0!+[N3$ZPS
MVV^<<:9X%>2$_>QX$7I"PWIV#3\)!:<LG]R-#?*<-6H?PTZ<_.WX._".)TCF
MBR\0.4>0_?$1RCDD6C%O?MJVJ-1YMB#Z\EQ2"6-(8<]^^".O1(I^^HA1%&C.
MX1<TWUUYXYL-T5L8?$%V"_*K.,XB9._3-;R%R3] @NK!'@/O7W5#5=[IGHCZ
M0*ID/F9OP<[Y6:3,>([",[_A4-+@9H/3A1Z*NRZ,BE^A=B31=>!):(RD@9)4
MKCT_IE$E;F=<_$[>RA9)"S;K-M8(;_/?,J(H;\N,+/1=W=3)V =^L:IUFL2)
M$^PAE>4V -FX$K]C+61-&8YZD!5\R3#8A%;^^R^_JE.,[LT>&P!/=.PEY=6#
M-[%T'$2VD3.WLF8/-7 .R/3V=R\YU12W_,-8HR=O7[V^8_T<A!I.[O*\;B81
M0"#/!:=RZ1-U=1DUS@3O& 06QD-E&E#<ASZU,!HU#,K\ ^ML\,Y_9QJ 2F5E
MHNY%HPYD87&QIL?2J*%0>GSO6.0D@,2Z&C9$.B6.9F7TU/^:F:(X4^SKPC:)
MT#6E%[R,?9W&+B@Y  K=%B<1I*A [1S.87(2@9 JW;OK)XGHB5FB/%_02DZ"
M##_22<2SJCX(#$?6$N/Y& QY33,];">1T'L0TF>Z^Y90SR=@R!. =4">1/KU
M0:B>YAE=HCP3O#2"5Y,*_PM$GZ%EH$H2VQFNY27:,PF+"N\:7.*5E#VP;JMD
M<76Z)WZ)]7PPAA1FY(<&E$\S\S:*;Z/$\(%R&\;]1*9Q&]2$*)3;-C\]*-HV
MCK"&<@_FAP:#C@XA>J+<JXD_.703&KH%7Y203]RX;9B<1@_Z*/=LXE;98?>,
M'"M2;L?$S85:M@,;AU)NR.2-8!*W!(6M5,!.W(0B;NWJ$*%3>BW-FK<@UOQQ
M1"7$ VC5EB17WJ;GLQ-=UP?T6./"7T-(GGZZ?HKNN_I;3IS&5M9-52>R56H0
M1-U_SI-[#QZ?BYV$8=&24M>I)EY7^/O*\@7-.<0[N1#/.<3)%Z4Y.<0;H,3
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
M;!.)Z.8,;.?\S&DMLXUC <^877["Z#LI]U-ZI9!5'*=@_YA&<(_R8_B;XZ<
M/VV:E"(VD-Y%;\ EC=P3FE5KPK0U4OL9N20L.0MTQ"SJ9J'"&OANMEFTH'WR
M?R-W6+#_?_ZO),K +7X9!@GXF3SECL+P5LCMNR3[8&5@\X+D?^^]<V4>='R?
M\9S?LA5A[<R%<89B_^N,Q+^WD#@X_BT_*_=2]YGR\F_G!M-M+IJJA3<C1%O&
M$J.7[L$]BN''_FW?6!)ARVGFE#H*!+@L0:)08A5"42G*MD""(0Y1*T\5D,]I
M@[ $&1RQJ(7&#N(YP9$C-_T$_U:!Q3A1[#=+_)DS&06.JX7W/FT;MBQ=N+@A
MDO=\M(UFED+4TW!6)YP[8Y0*0-H2J7XYC&'8,AD&"9R3_P(R&0AIS)-N&K04
M M5LM&5LM!0G";Q4F553!:3_82 W)MDW+5\_'_<1)CS+49%WT"1;GE7@^A<K
M<.UCF%:!VG_:AQK=LJT"I/\:#4AB![#PYVSZ:QKKS;G8?G]^6?]]._MNCM9W
MLQ;40W6_:[=35!2G]B%*Y"REM4&>0%7)V.)J9Z1^$!C H$5N@ N\+T3%Y&)
MM#X:X\8OE_PET?&73GQZ]L,?M20[S#P=?+TE'Y,-0(</4L1]?M4;I$AB1 F%
MP@!2#I2&"B)J/<3W'T^C:U=-7X4S#0/7RZ(4;^; 78AVY3T*O[P]RJWW >_M
MVH%:P)5^9;%FC'U6\BEMP/%5DL<"P=55IU\B;A-6P5=NH+AMPC*G8V2T* F9
M10.2!M>7G<6YEK:=/-,Z,02, (#  *91 .88RJ, T<%GM]W.^_CL!0YDO6KV
M471PV?E\BN.U#K(LS<@PG<\(+*(()5;''$V!CB8H%XSD5KB6)DQ;3"?2'R/2
M%K6):?VYA77R"+(SN\'%>E\ 16ZO#U (A2?R G6> ![0!$3PJH6_?7]_"1VL
M)"O0>Y*5)67D>*ORA#QZF>B3I!%8'\IP>Q!G>4(0@\W_#DCA+IV&TBX^00J[
M&0%1FMKJY94A-E$Z2CY"[=/['@%(0?NBCEJ9N"7/\(([1H(C:.1T^:E&;R=O
M%&[6;*7S\'QYR-T!TL)CF'XFA]1?N&Z8!L12N=0NV@]#I0K<CNRWB"Q<,KN9
M)F]B1/O>NH'^72LRN>_"G?,3W>?H%01.$:5Y$HG=Z#R<08)1>93@6BAV>G8_
MV77$<TMOQFWWV:T8/_UT_112%KHMZ;/N,H*V+2FKT*P#E.@]S$L-E,G'?B'L
M!Z.3$<)1GD3MU7%/D,-%5Q[["F=OTY@D1F_NK7AKC+*%$T3_C_#^@KN0,;C2
MJPG] >Y%\Q>UEOEK<)M=H(,'UP=/8%8B;0/Y9>[800!JX$D8Q)!Q>N:+YWRB
MG'"D5 >BH\A/Q'PS@SJUD[H!KN_$,6R3)^],0I1-\1!&L8-GVAU'TKA]A;T)
M/8E\0;*CO/ZU6RK,AUT"67WV/?0]]YY^N+O9R8Q4\!:36 648:(4[,MS32,^
MCJY:): 823, RC-//Y&RD'KQ*:^"\P@^27<$NY]V1:/2\[:G,$IV(#KGKV5G
M"GGR]36(##-#R%L8N&F$\@WF0B@\0S7BHIDF.@ZGSV%"*+S?, 6PSNQ?':@5
M97AFMJV<ZB#02\?WX_4A([N$CV1[CFJ:0(]YTN[])CZG [ J+H_X^M4JOXMS
MU;-\\>(^?/1HB(9SG.78"/K+5>32SV7-<M!4>JK528_/L<MR,.4Z>35R8@MX
M2(T3Q(Y^4@.'8^O'J:,?TJW:!I^OC\G@24Q_@?40,GGMTB(G91U#H\'BRL!$
M\1(CD,H(TNCT7;S:1#E:0]?[2=P4?S?+D>HJ?XNXU5D.T5#2-LF/SW+X%,K7
MG7P'QPFG!$E;#9V/$^X> KN( ZCEX/426H49Q.BR@/#(+)T<="U'JH/,0G3P
MM1R*H603NJ>QY2 .: %L^36/$SHY=C]N#^IQ@BA1QA#WT+8<TEZ2AS#PH\N3
MU<]:TG(GMQR?KC824:][RV$:2A9AN?A;#N,P]A)J.,$X$91PGXI$+%@.(F>B
MX(&C&T:76U'^NT0MNL%RM+K>NUT#*"R':ZC[%QNE83EV\B]=_A@2RZ$;X*(8
M8;K8WAI6*U3%<HB&U!X8X3&6(SF@.1,?AZ,"O[_:>UAY WHLAVVH SRDQ7)
M^(91^SL%*5F.+&? #:^RH0*-_Q[?,17AHI9#JN[HB@34V5<K  7GP+U!+EO1
MT0F*@!+(C;;I^>Q$5\B/O&.0:>OPVLRMY:A$ M*;$/55I4YJY_01%<[QXZ[%
M!4AYY&GS:+&51DYYOIZR\][3OHJK(,#;2UMH:5%::WL"('D)<_,-)?4GL;E1
M"Z F J5T&,,B]*<U_0C2.'7\C1?_N8X^X"PC5',KN;XA&0E0E\755?*9_@[5
M!W0VP8N31@ZYB@6VG5R0XRBI 0Q_NH&+RN4A.TXA<F&.**[%L--#CPI8_.[_
M.NBT7N&5>T[/Q(DU_SX\8J2MK/YFYB::RV<>"G9!N<:XNAJW,$D,5/_.+2,
M1<QGQ\W>TZ@+PC:5? .\+,OQR=R_U487Y\>BA6]C_A3UD^);BG9S?:B4Z&V>
MEX2828787I_P6/B^9K;CW&NG,"/3>06[G^1S]KC=UKY%/FO8=OH*#,"Q;R6)
ML;.F-M67O[[2-;?HM=Z)]O''90_/WW_\^R]__>4OU)7P]=69W2L\@YL!DJVX
MTGJ8M@SJJ:7W&<]2]%\--8ON<QB]@1\UXTT4!O"?+LCM_&2R$QO#5AZG?Z^R
MM\#J3LX)JPC2HJZ&W4_R'5@WW#Q"PE\6CE-@OXB7^4,F^6+D[VR(:$\Y&9B&
MADQ:6!]11/Y,@3N/',O2!(11[O3Y%$5AM PA*63I)V[LAZS2=QG&*%F78JTF
MM#9J^E)$=3TD^.K\I)O6&G^7S$E+30R2Z26$_!N\A0%+BQ/H."#?O_FP=&/]
MK?[:Z'N#7@D#L']R(I1#$-*KFY[3+$;N$1P\UR/EU^7HJ'%1=?=)X@(:C336
MC/U,5@&<2YJQZ]PMY8HHYA'$;N1=<J<>[!KX^FK,:,R=G-JL7-3$](0?,3BD
M_HMW(!6TX>FI;5G/R)<!O'A?R'4B<8*C]^F#S N/N2ZNKOH4OS-2T9#7Z@%
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
MI:&F!<;B12IWOS!NU7U./]6@9++KD1+_JYH8;;(#DI*UXS1%%2#\I\D@='?
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
MRM"Q@ZWV+[B*\\*T=,7Z2X7,M5:E;2338_,F8=/=*"W%0,"7NYZE#^.R:3D
M-(_.6_V%EI^ET:MF'F^:5V9YTBDGQ-[%L\.KR/*_RM4/&"+>U^* =:,U&1.Y
MNN$ ]4<&)(:>ZB#6(=ER2!@"+='/V=)ELZ3:II>TI8ODO>SI3M>6)[SHR_@Y
M7+]-1DB-B5!#J:$!24;X>L!UX'2GMQPJ+CWBSBG?Y")N S"4CD$")J,F7];$
MJVHF8Z!>[*3'58RB_)W0)21BI389'24W$C-8910%[83HA?!6;#(0*DCC+NS'
MY"IU,I?/$7%D<ETU%93 $;ED<I$PZ=3!%2!E>1$P,40:@5BV%^_JO/1V))CM
MI;LZ0\$?>F9[/:\N$#%BVFROUB4=DGKPG.V%N92!4\7FV5ZT2U@^H8;SV5ZD
MJZ\QX#XJT/8R71*-(T6$A^W%N7HBTHKCL[TL5T\\:"&.MA?=Z@D-,3C2]L):
MLG')(RMM+YPEJ!6+QV_:7B1+$* NH:%*(#)1W&4'DRJ!PF2YEA:6J@0,>\1:
M4GBK$EA,E&Z%8FC'572E5LXI1<]X=[107,:P_0><3=1PR-1=FJ5)Q*V-I89E
MWUH;$F).*\2":SFM(AES?EZK"ZN@FIXE9[UQE VX5&^!%<-9!:A(<[,Z,W:)
M_<:T XJJUG)_!,JA+%IX7C!9TM*SP>Q9?%[W6,[:L[$L6GI6O5C2TM%8-BQ]
M<4A )&_US>&, (!C4?9FF6&(HF35:\XL,VB<U^ Y0"A"OB8ON3F/CA%'1H!C
M])2>+8^C4@54)5M;'@RB%)]<!+<\ D E0KF<;KFCNU* ,GG6<G=O-0#=R?R6
M^X1WQ,@R>_H&_N?WFU&]=,&L"2C(K@[_GL7"I&"_AH)BYDX6&UG>?!7 Q8);
M9&G^R+$] 9# A=RF?%MR_'!%'KEA[/C?HC"]Q' (/T5!+OAEL^SR0\Y FR*L
M?I&T]X.AOJX-WMQ!>O_N1,FU?A3)!G):#WT6_MM$J.4>V^VDIQ-NL35*W2Q*
MZ[DRJD!-5-G54%4=*RIMTOM(!O<A]'T4<1J10;UO,AXP>U>SELFOD)V']AZ)
M::GOX;U^LRU])XXAH>1Y=JB[P>XGF;R)@3Z0:ZV3$XC*/SQZN8=;F<L :ASD
M$R%AU-&7]55)8Y1CPNIEQG+HLB DI]C;%S_PK%-D.-EN("!9'Y[BQ#LC-MM4
MXK*CL QC?$4WSI[ZBG+5W&/A.09PIGF2AC)W4*O<FTA/Z24I#U#<:<#X'GGX
M>A7$MI+G5.[M\H0>(5;!W\/H3TBC2^?B)8X/1;4<&\X"@#U&DTWR*>+@R%LZ
M!D[DGGY#.^K'9=YD+*TSNBB:H1# [$ZJ9AE=]Z'[)WU291O%<WB/P)<7IK%_
MW::7"]0F ,HE?'^=W[1VGCD+CZEHC76]B(=8L>T5S>T52N'>>QK!.PT4TH?
ML>+H+;VL%M@Y/U$.BG50W6%+!R+UF^.GD-7#VVT!9Y#$V]#'5P83&T&? \I-
M="7YG]1:Z/.I15"MSA?'BY"!#MX24;L>*Z.Q9!H1$8:DBS\D.0$G(.8!+3$\
M1Y &(\_QB[\$1WA?P:.%G7''D;2L)S]'W5=1]-<R=_+YZSB(M1YB&AY:ZD]N
M@SU F.R6P^VU-?!S37VCJ$\9)H/+\41,-'O68K#(#P^6+EZL LA8:W]P6;\K
M%%IV?:-7S^4(R?%$R<$&+*N*02MW)1,02RI<\7G,DA]5&A[#EA$%AP,1[[-,
MQ29DO(\8#=I<7(=U6CC?61H!&&PZ,QH7]DG2K&MT?RPRV57=!N4!>W>8#*JY
MQ"ST/FAR"(')=#MLT8$!@S(T<V"NUU^3HSI,)EINT<-D@,VE889'@.6A-CI!
M[>/28'D CU8A@N5Q87G@CPG8#DRY ^8P,P+=RL?%\LH4)H$I[JQC>1$,$\#'
M>Q'97F/#!&1Y?*!L+^"A$V=1GRW;*X%HUJ ;CBNVEQ#1C"7)N\WVXB,ZV<&P
MML@A"Y9H-3MT=#"TO2R*^9B73I"V%UPQ'^D.-Y\AN3FZI>78IN>S$UW7A_MC
MG1O/<5W>G0CNW0DDG@MW:L[@,6?PF#-X3"6P=\[1,;X<';OP!SP76\?_<HX
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
MMLFX__S%6>8Z.K["N[^4+(P?OI  =[Z.$F'078\%EHT:?#B>'#^FD3SL9 0
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
MZ.CXX<QXH/\>3@:_Q/#CF_U^L\?.Y#DGI=Q3DQQD"]A#%L\QIJW1-?!TGZ/
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
M8/IA:1Q@^Q+7H3U>>+I0;@Q$93M.JH3NOK.,N80:$0.=ZMDOQ F T5 .RQK
M[J(OSJ^D+%Q0"_KN/]52U!0![E6A.2J(>:@0#C4&=/7C7/^^5Y>DYR13WJ>]
MBH%NLU=\<^ZB5ID;Z1![("TL#C?\4.(;HW5Q%#N;?=%%=^,RIV1I?A5\6S\<
M['.VM(#B>J9$]E6ML>:^$')MEL79/H2_1#$F7N3V"VP#I&K<-F8%8[BQQK7D
M.^/1X(=U3;4\]^W!]C E47^/4<U!KJ8CB"2_M,G$-08:R=:+9]L+2> 1X1X4
M,0O"808:B4L#/U_<KHP^ET;)%UKB*E=XJNK4;:>&=*@I#$DC0[Q=[/XYQKK4
M7E'!/&<ES>2SOK.,X4"]]&../FS.R6K4 BR3JZ*$E:I,H@#K7@6.2X>V%0_)
M0&,.4*NPFSHOLE:UM%]"96.B>;3PMS\@4A+W0([.__P_4$L#!!0    (  B.
M9U@:4@WU>00  ',F   /    9VEF:2UE>#(S7S$N:'1M[9IM;]LV$,??]U-P
M*5*L0&3KR0^1O #%EG3%LB)( FQ[24DGBRM%"B0=V_OT.TJVDSAVDKDUFCG.
M"S]$)_+NS]^=S),&A2GYR1LR*(!F^$X&AAD.)Z=_.G[0\@;MYBL:M&<6@T1F
M4Z+-E,-/!R550R8B0D=&_L#*2BI#A8DKFF5,#"/2KR;Q03ULQFX6)S'A%,"&
MA8G<5H<)M!BT\7AM5\VM<BF,H]D_$'EN9>)F)L?(*G+C^EA.2\:GT34K09//
M,":7LJ1B;IA(8V2)M@8FQJ&<#46D[)QV-GO^?)Y4<JFBMV[]%X\+9L#1%4TA
MJA0X8T6K9KIQXW$B>18O^?:H.^C+F&6FB')FG!0M05@?3B<%2Y@AC<IV!!2A
M>JX$GO_4M.M52-$!4)O*T+@3;ACUSU)H_$1D3CZ)#"K %_QZ"4.FT2G(R,4H
MX2PE'])4CH1!B,@94^4&"CVY,.L5^GND#<NG7R?1IF#\ 22=J60D,040)E*I
M,+6H85*09$H4Y*B52.VAVB*7G,NQ%:M1<F9Z9:B!$D?2T9* =[.QT8%#;J*P
MU?'[AW'&=,7I-,HY3.YJVL609MK,':YM'&VH,G$MGH.JE#I*J ;.!#R0^39L
MG"SH'7Y'W<-6K^-[O7XW//:#7MCS.[>A,V&]=VH%'@GYX,1KS:6]HVDSON>Z
MRP-^'Z160T%^/).J)%=.GWR6+1($@1-VO4[G/:D RS@3EJ<9@N=2#)UK0/-/
MPM8/=@/D@E-A$_GCB&,V:_R6D3.:*);6$QU9T];1 CQ;X&_+_![ ;P6@OTL
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
MR16P9\K*GS0R% @H^?QN['B'U7<4\<E^A#R"=[B&V:+H'(=HJV#L4UM;'_"
MCX2@S!?0]&N'@@/=1_>-*8$V<,*.>&\[>FZ*^T/>.L:]>K+L.-E527]37YE-
M(CI)19J-+NDI<(5=X#69?K.X(S_X>"\=#,DOMYL__^!N/I[+J#6>!YN\9QK:
M1M2& A@2CRBZ=YJLC6T2G5:PSM\4NG@#.NM:AT#T$,WFEH_;(* T+(Q:C@ \
ML)IGUL0G-WSK?*%?.XT%Q-3HFB+N*X^??-O^%KMS;FGBH2T,X)U1H0DA[(O4
M3?N\('G-52>U%+'NQ&8HGA6M=^J/ D;?Z:;=Y!ZFD H#/=T0Q?T@ZGLHC $0
MT.H,4NWS*'R^J^%_^"FNIB?IO8<:SW4-C?5;E*_2(0D'B Y%XD!\XPE<#X1!
MHG[=S*V9$_-_(V?]0:+KN8;JUM@5X>FBLHE@Y"V8 1;_F_HX>OP[A@]^WW1/
M</Y?X?CFQ>3;\6X+'N*&XM;KNJ&A,F3\RFZ: _ODHBW\O@[6L_C0R!4:2*A?
M8NN8IIJ,QZ/QR_4 X,O(UE/FTRZ#UFZ(K]B2[OC>#P:X]>R\YTF)EZW']T*0
M4C?>B=.]>OTROA8,ZAZ!T_<\WU& +V[7GOX=9/3W NL:YF"5ZRS^'_*-_8ES
MU^3M7)^,SJ%NSK43[5$/A 0.MJ?=%XHT9EO+^ &V^& X\EP'8?%@@.WU_[,W
M'N4-+&*=56LS1]]!3L13)+'F\$_06P<4F?M\=^)/=EY_[O/C<])^.C!]]L9N
MTGZ"KOB(C'S.QL\)?\_>^#R\\1$)^;/#;IFMC?O0'RI-I;A<4M'Q::[X1SJ1
M><[39V0^>^-WS=.CG]/K+VGNIN?Q0_F)3]YL/XE3B-]A?;_-$=B/,E F_B9=
M48GO!N)T?/IJ9^E;/WPN#2V'Z>Q9VX8/0;JZF2KM6R-7&3^=WOEM=+^Z]911
M:DB-NO6CZ>J&Z%LYHT3N0UD&<IDT"[GRD<DO3OBGVV^^NCB)/_K^+U!+ P04
M    "  (CF=8LBL\":<'  !0+@  #P   &=I9FDM97@S,5\R+FAT;>U:;7/;
M-A+^WE^!:R8=>T:2)3MN&\J7&5_KW'@Z=]=),G?]"I%+$6<08 %0+_?K^RQ
M6;(L.W)R;9/8_F")Y&*QV'WVV06HLRK4^M57XJPB6>!3G 45-+VZ^*5_,AH<
MGQVE2P@<=1)G$ULLA0]+37_]NI9NJDPF9!OL7U3=6!>D">-&%H4RTTQ\WRS&
M7T>UA9I=#U*F7Y&:5B$;#DZ5@<39$9Y'N68E55H3^E[]C[+1L GC-%,_V"8;
MCN.S4M9*+[-WJB8O_DES\<;6TJP$)S8$6T,VT"+TI593DSF>DV?C\:MY<JNM
MRYX-X]]X7JE ?=_(G++&47_N9).FFR>+)U87XRW;[C4'MLQ5$:JL5*&?0Y(,
MVW"QJ-1$!9&\S!K@A&9?%[Q_VKN]D,, <I^(&WX@%U2I<AF4-?Z/=<1_6X^Y
MEQ_JB8];^&5/_(<\<FLIW@[$VV#SJV!-3^31(4L1*AFRN_P1%Z%, 579B\'I
MR<GS;9.^!!>-!N)25')&PM%,T9P*>$5Y<6Y,*[5X0TPWPAKQVKI:C(;]GX0M
MQ=];78I+KZ4IQ&LY<1VV>N+2Y(/QX_;H\4#\37KX$4ZKE^+*V+FF8DJ]Y%B7
M/%I8*#,V"!XHE1'2+$5K@FL)YLI -;2QJZ6H<>44@E'*'+><L#4X+=@D=TO
M4$[>2[=DD5I>$>;=T.EQKX QF%(SR_ <+) KE[<UQ R&PY*"G("+\DKXEO^M
MQ\_)4:>$%U KKU&U4(K$7(4*"_0-Y=% UMO -%M@F3,,*\1DN>F&1PZ5DWN@
M0J)4!L'@N*Z=WQ.<<A:/W<9S94ID9TQ!?,]U6T G KSAZ1[ H9Q>"MCO&5H,
M.:W7V.G"YK>FAK&%2KD-B59# ("QB&JJ)M&>7/I*E-K._0I-CJ;*!X<^14B^
MF>R&E;T-4/B5,;>L?>2X>#$0[VXX\9MGB^/AZ.78=Z'O"ACGG"U1V7&+_7LI
MI*,8241&332QQP4JH)QHY2L69[$:?,.<P]>%\KFVOL4XGM]9G4+:.)M3@=M>
M'"""!0$2*4P7B[R29DKB'$G^IM60&)W(_NCT@ [CT-%ID:[2I>).R"0HL7[!
M3+"!L!1QMF7OB<H;$Y68B->YC3M(<&';J\"_' R_OP]*WWZF2#J0A^)'\K #
M/HU$_OZ ][C&Y++U^P]ALI\0@M?-E,J';1T4(-=GRD<&@129J(<[KS7W;/*7
M(RTC&KKZL8YHK^,V?JC 0[#%6ZT*&:*A$Z\*)9WB!:A4Y2*C&M;4>JX\,7E\
M+%.1;ZPG&(3=5QS42, P;[5DFL2RHA'K"H81J1YNEG%\FQ +(F@83\5>S/7%
MHFVRC;:]D_\6Z/:GC;VQ![S.5,&0DMX:R?PH/>#(+0_C3+IB%7.@4,F)TBHL
MN:3MFI8S(,(C1CZ!]X;H1LL4:7C1+:AI70/D^5B"\]RZ(AH0FZ<I&516#0#B
M"36,;!9!8YA A@Q0#9CP<<,L/Q07,ZG;F/D< RI+]"YJ!N_Y'3W(NGSN067I
M<G=?$F&%@: AG[J?B6W#W2;L0[;R6IJXM2O?WS6+R:IIC)E"R16P9\S*'S4R
M"A!0\OGMV/$.J^LHXI/="'D [W -LWG>.@[11L'8I;:V/N !GPM!F<^AZ=<6
M!0>Z#^X:4P)MX(0M\<YV]-P4]X>\=8Q[]6398;*KDOZZOC*;1'12$6DVNJ2C
MP"5V@5>DN\WBEGSOX[VT-R2_W&[^](.[^7@N4ZSPW%OG/=/0)J+6%,"0>$#1
MO=5DK6V3Z+2"=?ZZT,4;T%G7*@2B^VAV8E%+6:!0L#!J.0#PP&J>61.?W/"M
M\H5^;146$%.C-7G<5QX^^K;]'+MS;FGBR2T,X)U1K@@A[(K4=?L\)WG%52>U
M%+'NQ&8HGA6M=NH/ D;7Z:;=Y ZFD 4&>KHFBKM!U/50& ,@H-7II=KG4?A\
M6\/_\%-<34?2.P\UGNH:&NMSE*_2(0E[B Y%XD!\XPE<!X1>HGYE9E;/B/G?
MR&EWD.@ZKJ&ZT79)>#JO;"(8>0-F@,7_ISX.'OZBX8-?.MT1G-\K'-\\&WT[
MW&[!0]Q0W'AGU]=4AHS?VXTGP#ZY: N_M(/U+-[7<HD&$NH7V#JFJ4;#X6#X
M?#4 ^-*R\93YM,N@E1OB>[:D.[[\@P%N-3OO>5+B9:OQG1"DBFOOQ.E>O'P>
MWPV&X@Z!X_<\WU* +V[;GNY%9/3WSIC,L=C^!%1SE<7_?;ZQP^3-7!\-3J%N
MQK43[5$'A 0.MJ?9%8HT9E/+\!ZV^& X\EQ[87%O@.WT_Y,W'N0-+&*552LS
M!]]!3L13)+'B\$_06WL4F;M\=^2/=KT#W>7,I\S]=+#ZY(WMS/T$7?$1:?F4
MDI\=")^\\7EXXR.R\F)!><MGN.+?*B?QL\,VFHWOB1\J1:5X?;W+^5<ZI^F)
M=[P_;EUW9/.6<D=!NN53,C_!]\D;?VHR'_R<WI8A6V_E;4S6]?/S]2NV3N#P
MO@3&)V_>'\6IQI^POC_F2.U'&2@3_Y NK\1W/7$\/'ZQM?2-7U.7FA;]=):M
MK.%#E;8VXT+Y1LMEQD_'MWYPW:UN-664ZI,I;OP2N[JN!(V<4B+ZOBP#N4SJ
MN5SZ2/5G1_Q[\%=?G1W%7Y+_!E!+ P04    "  (CF=8G$&&<0$&  !9.0
M#0   &=I9FDM97@S,BYH=&WM6UMOVS84?N^O.&O1(@$LQY=<6LD+D*7M5@Q;
MBZ9;]TI+E'56BM1(*K;WZW=(R8KKQ$W:)$N<*@A\$0]Y;M_'F\E19G-Q^ A&
M&6<)O</(HA7\\-5?P7 PVJF^4/%.73X:JV0.QLX%__%QSO0$90BLM.H'S NE
M+9,V*EB2H)R$\+R818]]HPF>-I50!AG'26;#7G</)4F,=JC<RQ4+J51)&QC\
MEX?]7F&C2E-@51'V(E^6LAS%//R .3?P.Y_">Y4SN1 <*VM53K*6SVS !$YD
MJ)U.I\W57^B)E5 Z?-+S?]$T0\L#4["8AX7FP52SHE(WK2P>*Y%$*[9]T1RR
M98J)S<(4;1"3))?.AE>S#,=HP<78U:<0%%<-P.5*U\<@)O5<WY,@''-M,<68
M65027I=:HLEX N]*;4H"$ECU]='Y9GC<J]#TG\,?W9/N<1=.>.S#TQ_N]3K
M#+!$%9:B5+116L3F16\?5 HVXW#"])A);H*W,\'G<!1;5S+H]=82S3N',J$F
MP]WNWG#X=-6T&^+>WZ4AN,^_-7;7"]4;"?1%U@&;HLU\N(ZD+)F ]]SUW>!8
MJ'0._5[PJPO;SZ5(X8T13";PFHUU3=4.O)%Q%[9< \^>S :]?AP=J[Q@<EY]
M3:)M2)7V&E(T,6F8<Z:!4Y03>,ECGH^YAF&_0YD9##VL4Q14UAA&J2TU6B3G
MG/97LSAC<L*!].1HC'."_IUDPBR'C&M.!G]F4N548U''2Y=D@C:4#IYT8)HI
M8)K[@N,,>4IZ2*_%4PYO4^J9R$BGO2I[C9+)&,F915F-N=KW#L2^0YLO4Q.^
MCLEP)4@[5YA[55Y@S(VMA5'#)ZFF%,H)#U<0OSP&5R@5/*TP?_ T2M 4@LW#
M5/#9,N+W"7 U<A=P\C*!L4S;R$,[(,SF)APSPP5*?HX$9Z"LE=T=*W:[!WN#
M_<'^_L&@WQ\^[PW//$?IC ]\ +[@\>-##ZG!(%K$=RFPE9)^K[?:[-VPWJ&C
MYG9:"C&G/B OA"-50S3-_RE1\YPJ& >B,Y1NL6T@$C</]K:2[0:39_1LJ%GW
MM?T7P]T*WKGG>^0HU$#13?3.IGLM)+]+2**DT2&OIGVNA)$U"3V%9;PRU 18
M4FT<-#NNF D!5(UKUPE304'0-)UZF%ETSM1@@KYIUW635"DJ9*N":Z_3K'3<
MS5A% J@2:N&4AI,$QO,E@[IK('R;DZTU0+RMU#Q[TM_O12NCAF5CP2\BJ5OT
M16.E:3SUMK@5'UGOQ ,"F2H)HC@C_C< [!($ZPJ$-<$*PT/#"T99:0CJ%VE5
MVW[E2 ;HA?93-+1H$FCGX:)^+412R>=XWWWQU"\L;;)&8'A)>;][F<3N?O?@
M,Q'ZH%=MKE>Z/B<7YFU* 0G&FK-/H7\-W(,+W#IU<PN:2=70J.#BM-\F %VB
MKX2^*T/JPGBN^$8FWX5C5^C_UKGYTSS<#!__G^35)%\81>-;018H@0DLPKM9
M^=TQ._ >:9ZC$_C8A5^XNB@J+?]O!D(/V;<'R_N[2]HU>-UR^N'#H^7T!B;M
M&IQ^1TL^=+NY2UMWY[;U6JH_1-2T5-_ I%V#ZEOO-,H8"R;.,WS[2Q2G=[=/
MT6[@;/(&SJ4;-/UV Z?M3-H]G'8/I]G#^<B-=;^AGG3AQ*KXDU6RG0D^Q'Z@
MG0EN8-*N0>Z6V-\)1EIB;V#2KD'LLW7=G[2J@V9SI]/2^R$BI:7W!B;M&O1>
M<[*R Q^(BJ;4[J/;QCWAL>:6Z7E+^X>(H);V&YBTF]FX/7^JVO']K/PHCE4I
M+<K)O=K9O7*R;VM;]QYF^P9<?<DL#^$WIN,,#OSM@-WOX]Y&)>I:#M&2WGAM
MB(Z@NKX 2B.93!3QIUG1P%2C)2$RD*+H#G0O#G?[HZS+-PLR9F#,2;30ZA3=
MI0RK+KGMX9Y.40BJ!VXH]D=VJ=G+:Z7-Q:[ZOL)5[G9H0&N<)VD*94%/G"NT
MR.^NP&'IH+,_$)V0N]Y/]PM#F<N50^2X<O?PPD/57";1\J7$K)E5%&S"JTE#
MP%++=<C$E,V-GS:,=MS5R,-'HQU_I?(_4$L#!!0    (  B.9UB>7<[6XR$
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
M/EWZZ*%H9QY?]XL4E,2\ J*$-8^Q[1"#VX26H;G$F=C28)!EH;T4@/XF6L&
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
M4[H9?8=_]8B[*FB?.2:=J>[L;GQ 9$0FV,[_R>KFB!'$+#E;BW1IKY"L"E[
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
MY"NCS?\=7N3Q]4C%H.D>/A[2I-=P&X?Z[IPW!9V^QB9TQP6B1&/K,6IJYKW
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
M>YA .17UM0PJ2Z/0!O<OB)N]13T&9*[Q'A*]K(I4!E/5Q;Y*]EXBF(%VPL
M>8&QX1KSLUBO?QK^"U:^-8Z52G']Z94D- -)SR+I#.!K34ZH3DP<GOOPMDA$
MV/ Y[(K=BOD7"+__8'_/2.A[Z8#48$X3[M=JIG;S]I6!R\7VW RAA\QY/#^]
MXM6=1;DO=PETO7MG//Y#V^.[34O1&9/AC77AROK[CL%1]C&T+[?"E<:-4E6&
MGL5_R[K28RTCF1D5&AK5OLT=6:1V*:\M,)!_1V<G\GF8IHIP&M9C)_D7?-YU
M&;J[4@"?K:8"A.^CG%+ZUE++O<:VW(]Z]Z/FZO_>#?W[;?V74<K=X%J-I4!M
MCP#?EFENH^&B==N*^OM/Q=@+_/HE)= G7<J_YMWQGL[^ZL3[,Z UC-/0P,!0
M6]/?.\GD,K=GN'SCF1N- 6^S) 1)!HE[M '2H:#75GVF GVY.:#;+H!^O%8V
MA,P<WIL,7#8>E8YLB>('&H0L'U6D\KT;P7[]P_EZ@'92?F:^\\1H>L;$F52=
MQ;.(S)==\GL&*M"P1PE/VW,'31V(TMW($+F&TM*Q%04](<<T@PC*(4 %5)%L
M/WDUR?O1KQR_6+*3AM$W&TV=2?5QB%$G7W63J$;<P9L]Q&E&"Y6/%S@=BGZ=
ML60S'$-D7%FX4K2Z]$Z<R4GZTN,./2L&"/^N;"VJ[(JXW77LR6HZI69XTV0_
M?&GH+A6H]Z "VSX&.:KIM#4*!3Q!M[<>?PDPR3F)S)E<Y5H3:57=-!2F>7[0
MJ.29D9OZ46_:BH'3\(:M-J<!C3;DI]\;#*0J@J0EF#2:Y@F$^__Q0?XI=+JQ
M@^4ENM9*U3-_@\'3\4JCM:ZC-A"J<%(S\_/GS"A)(/,;R10C1]!1] B1#1GZ
M:**>]JCW<\H2TR""U2^SKX4(GY"E KZJ'DHU3\H=B2_'1M,Z@U+V^V/]=CUG
MC3RC)+]V,?\._5+A%863R^9_$!,';^*:JSQ;:.R2F.7CF8S6+!$DV5HF2K"2
MW-&!$!7@-F^*N1FU;2H"6HS3I=K,J(PBYWTB5YQ&CG<\ZN+&5 E@MA@:;?]B
MF#CJI+P>Y2K^S":S6HY@$<!&(CK;'&Q"_XSI?[FK^AUV%?;WCD"W;=;<MF@>
MN@%9J'L%#[GQ#D'R>4V6SAHDP3)=Q&3#<^A+3U^+3HWU6"X*#:G.3V5^.VKH
MH/-5O$PI/S.JO1\T?> ?[1"4#/E%3:0U,;$W*Q"2FB*KU%)4P1Z00&;R##2M
M\H,U)&D(1%U]W62Y:G:8*RK-NW<M(#@@_0FFK(Z'X.1-EG3A!J-9SC1B>E/(
M\\(8%0A$#@GB9TUC8EI5](;"V_?<AT];[DQ)%DNTPMF?[)VW[ORI]*/>,J*#
M/*4[%9LW%O(0M;F$D7B]:?^(#Q&?C14S%&;92''</5>2$UIHZ/4$U2/Q^I5
ME?IJ%*Z+[76:6-D[WF(15+1'Z>/G9%,FJ"4ZW\_E9X#;:UE[;UM7#^;-Y.-F
M05E'#0<V\&[6*.-OB4[2M:9O5S!G+]L[^C4W<"6ON_D_+' M8(V_UM0=0)JA
M ALA_AN8*JY=<\L.-X\SNHJWC0<BI'2=#]1!8XGP[NFL>K1CX%$Z["9D-26'
M=>E 66 D@_2_%*V;!YA?U(_6VG22[Z\"O!>(:?*S+Q)=/'L>>V(2U3'XBU(S
MB53@[!LA(@%!!:Y#[A:MV.SPE% !9"05V#MKM3.>$C=%? @J_[UZ VB>-,>9
M<SX\9Q)+&\&F72(@E+H1><M&BB:K'N*#_(IIG8%L(7EC/D.$+(QO99BWM IS
MA\+6=P>U5^MIXZO!)6/H#T[)KKW(_$;;QY^6/E;FKZOK[=,E6.>RL0C:N!@1
M=Z]X*$V34YC;$8I?X@K58MV_9(F_7I?^,D3A]XLG&TX,R-K9OD5?X-XU3!**
M1)K@ZE\I4@'62;;S]%5?JY,6([J#KQ/9W/J4^@<LY'TK%#EQSNA/:B;P,,&S
M42(KLM'=T% 5,PXJ$"PI5.1)+ [[\CB>?OB)0U5'4QEKH= C?J$&]* QI*><
M.VG+S8O5Z_K""?XH7MB<\]D/P[ 94^U;3(RUHT%;GPF(N[C%V71;94C]Z'52
M]LLIN&%/8'HX2M\!$WQU0SG/ON"%(JOG0!6>J60+W\ZO7(!+NN\3.N$P9;#2
MMPMY5Z9F_1GN%V"/@!N-$BP:^>!AT\5GDYPVL8@N?\LYNU#WK,]B)VO4?+ZT
M#C</(Q0(]46M$6%F-_OL<HOI,$ND-USI>$(]D0X-MV1J[3ODDH6N;</WF(IO
M2VQGNMD0GNR &J$"[6B0-*'WH$0>9-;:$MN__:50@8"Q#?T3[WZEYKT/>D@%
M/LB1048QX=,1!*4"<4NW036!!L!87+7 36J$;]13AHIOS5,!$D+5\6B+"GQ6
M"O2&3E%@>+7.^BTA):(@V=IA.X*B7HXX6*3<LO[TM[MG+(1MRG>!#^GSER)P
M-J38 %.R+V1/-@@_5W_(OX<D;DHOF\\J4$3V%!J#6$%OWXUM#B6 JQ')09+A
M$I07XGY8>;7=-M9;W_5XI!!W[S $"K76'T)DX6N'T+WCTAWE;H<GG:@ ?A>D
M+])3#3\,Z@M^/4Q<_03%(5%&5.#:>S"0@R:]?0_>5+<-(]/:4"AM5*#5M&[
M$CYA'"BW]LL[^([ .*:.'Z<;N1ZDEV=EN5+$SVXI^N,PWYT&BQO9N&=H.;+6
M679'9[A RKD=7&+#L/35%J$=V=5T_)(<Y;F+3AE*$USP3 $5L/8$:1/C%Z'3
MYVQ8-%R1F4&B8$=X'-A10"I<<B9*-$%W))V$\*OIG;5/NN80!8VAA(]PHV'A
MP?*N3T?Q?QCH6#U?]1ASK%%C*PK:+EHS3:;DB>/7PU)C(32'=M:=6=] 4?%(
M:T*.6HF?4CSTAVR+DX10<Q=<"8(1MG^1$IBLL.JDV9=O=^[PG7X/2Q-?7V3X
MD?03BY<OU?*<V=H*2#1%^KKSZ9'E!-8.?NX7FC*5O;< ]0^T(2_/U9:.CIZ1
MOE'DVJ_+>H.=\QEM;K'_(R45)"2CM+%I8C.HV<U#/;7;EVNGW$AG,FYXK@#Y
M64T("8TDJ9]8+^'Y1=\FQV-B._)^C!(A6F%<C>.*\,7P*@5&LL:<XYG<BZY_
M)NS3Q^^MMJ12_)%=),8N!L)^S=B8!SCYG-D,I:\ZH">K&Y&EZCJ];#I,!; <
M_E3 $L0G3:5=I>!+H%[;S^U2JJ&44)=?SK,R$S:B_$^7B6R-0COB*S;X-F+R
MLG0Z3I?T&K0M#TKN=^9=%_AIZZ\;>3BY:YE1T@I-(&ME3L[-.IF0,S4[Q:]-
M[]#>>SF 9O,.<*"T&XS'3L206S<:&9VP3ORQ'R74 DUS@^ZCG[6Y9C0MR;[>
MO!CH;4S:\5BO6/39<-BKL>T]</STIJ#G@G'_@5SXQ-@(2DZ@/%ICP"Z2QS'^
MP^')JQYM)'JTG?4)'"@"I77[-JTNBZOOT6NO?GM2$9J?WS.0PWK7DF?"NK>P
MLL^H\(11FN +D(>?[7>G I!ZK &,2(1A1[ !&B6!&<Z&LV9=I?9S+SN_'Y@(
M-%(!-71QD GHHIK0M15H@FF4:=5SO?XRM6XCYZ*!/=-PU"T'C*NBE85 ?#%]
MOWS7'[/#@FWUPZ>477Y-<YBC^I6N;*UG3XK@.D/6WTR;!0A1:@.7(E":CAAU
M63G7,TR;7>Q01==E>%NM^T-<\9M?B"8?@^(OTNH]SI*9U;T)2808T)8%06;W
MI'[/V30471ND RZ%#61*E39$)>E&EXDN^"LR_ __ZCZ,G-:JZF*=*+P]H@ ^
M*4?F2QQ&RVZ?H?RA?HLR#E\>1DI%;-NMUE_ZCL0M+O<Q%"?6"1%R-"7T0M3%
MM:A F:F2C2&Z)+JE,T).:FH7MV=G<K <-.TSO_&H0V#3NW L3F.W_$1YR)76
M1^AAGQ["FT8^W4@[7S^3"1RVJ/LFG2,Y@Z259QU\[.OY7WH_]/GZ&#<VR_K4
MSF^+'-Q*NJIOK?NC1,T_ICO."ZUN%B@8S,:CT>KJ=6*Q'+1MF6_M&7'#V%,N
M2R<<=5#]/BI/Y+(FI3QY@M'6W7G54/+3S!^P< W)^#X#/H'A5Q-3'-BGT%7L
MVHOUF;1JO.*VGUFGQNB';_A%7L_;^R 50[WL_Y.0@4V-FP+IBP*C X0*)+##
MMXUEJYK=./1\F&%YAP9E^?$PC4LE7AT-3]VEIQ\7@Y#/5_L>OZNBD0?[P<NI
M1W^>\\9I18,O69_IGDNG;?>B*$*XX;*&R:>YMJP20CZQGK//Z<D>5N+^\)_G
M'B0KA#Y+D!>=>M*VJQ3.Q^R3Q>5J?4=Q4C<I7D\L7F]57]_149V,54XJ^ 6[
M1*_=SBLQM6U@,OL2=#OW0?C:(C0UF'Y6QD(W#N(O9@T2>B],/9$!CFVQ(1D+
MX8J#3,&8BB1]>$,%HI !F2CX[X4N4!RS\*K!XW/U?Q^0]6]$WKIG2,XR+27!
MNW_+]>\T8@<C!&,BE:3O9P\I9]Z.;MM@YP<TH:W6B]H2'T:<1VW0W5PG60I!
M95:?_):5 TE%=N_/\ \OO:[L$,@NSNM_)684]>/;I]*:W5]5!1HE13/.)V%;
MBS*?\2P#NG,7H<Q[H#!\(I,K7BX*R*VG9JWL>S&P*T0PH+9I^Y\(9I\[<JC
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
MXZ_JV\RG;N#?9=X09S\5B)C)U12(1)XJK"06+19_],_3E2#*CMDH7VKO_/9
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
M:2TR,#(S,3(S,2YX<V102P$"% ,4    "  (CF=8&E(-]7D$  !S)@  #P
M            @ '$E 0 9VEF:2UE>#(S7S$N:'1M4$L! A0#%     @ "(YG
M6.%1^*V"!P  ^RT   \              ( !:ID$ &=I9FDM97@S,5\Q+FAT
M;5!+ 0(4 Q0    (  B.9UBR*SP)IP<  % N   /              "  1FA
M! !G:69I+65X,S%?,BYH=&U02P$"% ,4    "  (CF=8G$&&<0$&  !9.0
M#0              @ 'MJ 0 9VEF:2UE>#,R+FAT;5!+ 0(4 Q0    (  B.
M9UB>7<[6XR$  /M* 0 /              "  1FO! !G:69I+65X.3=?,2YH
M=&U02P$"% ,4    "  (CF=8!UCV-<PK   Z,0  $0              @ $I
JT00 :6UG,C T-S@S,3!?,"YJ<&=02P4&      @ " #L 0  )/T$

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>gifi-20231231_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2023"
  xmlns:gifi="http://www.gulfisland.com/20231231"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2023"
  xmlns:us-gaap="http://fasb.org/us-gaap/2023"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xhtml="http://www.w3.org/1999/xhtml"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="gifi-20231231.xsd" xlink:type="simple"/>
    <context id="C_69875705-892d-41b2-80ba-7e0a92c631b5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_574478c6-3424-4b10-81e0-a8e51c53a492">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_54d43905-2604-4f3d-9db0-f0afb038ed44">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_78af73f2-e512-48ad-a168-e1a08d677b0b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_47994a14-accc-418c-92d7-381b622394d5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_879241d4-8e67-4078-b6f2-e9b783ae6fd9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_c1840173-ab69-485f-b424-fdd9a23ace30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_7155407d-bf96-4947-8a98-ad5509236125">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">gifi:ShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-01</instant>
        </period>
    </context>
    <context id="C_a847befb-7bf5-4190-a135-70de8e21abad">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_20813156-538f-4600-a39d-fb62806f1a85">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_7300738f-49f5-4cac-9ef7-26cdeedeee9a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_6c42f479-dd72-456f-86ad-1450ace35beb">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_c10c4ca9-3d46-4b21-aa90-73868cd784b0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_8a4ed5c4-6d4e-45f9-8851-a0debd1b7aad">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="C_001c1d83-4997-49ee-94c6-6038db485db0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_4f463aa3-6bb0-4982-868d-be2ebc2fed2b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_7d6fc82f-38dc-4a2a-a2ba-042ac17cc7e4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:SeventyVehicleFerryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_4900e066-caa9-4f68-828d-0333a646f71e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:ShortTermPremiumFinanceArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="C_42157485-3d8c-40cf-89ba-67270f7bbea0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_4842ef49-1790-4f0b-b666-da169d6f4753">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_09185d95-707c-4c74-9ff3-bc5922f3e781">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:PerformanceBasedRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_4515a7de-df59-4645-afda-0a8cc8127a58">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">gifi:PromissoryNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:NoteAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-06</startDate>
            <endDate>2023-11-06</endDate>
        </period>
    </context>
    <context id="C_4df14977-c162-4e59-95d4-a309d321817a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_2ec33251-854d-4681-ad3f-7cc527f3834d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_77250883-71d3-4197-8132-505f6c3763fc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_cc1e7336-22c9-4f9e-bfaf-e935d603a08c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_b6b8c9a8-1292-4c9f-a653-f5ce9ac89023">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_bbf9f0a1-e9b7-4b9d-bfb0-b1fc5cf2dc5f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_06f13167-5eed-4387-a08a-8dff424bad6e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_d9b40c1a-b5f6-4bbc-a8d3-1a6ed5b34a88">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_9e7cb61d-b813-42a4-aa1a-261cb783d9d5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gifi:HoumaFacilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_50f0b57f-c5ce-425a-b5a2-ea55f805b900">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_fe5c1386-484f-47ae-878a-5f3c0b7221e8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_d4e6b6b0-e516-4647-a511-ade3e6406508">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_a175debd-0104-4012-a2ab-07601609eb1d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_6a3b135b-7cee-4004-85ca-f908d2888183">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_7c78c8ad-38fa-4102-ac48-f7653ccce9fe">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_c4e567e9-72ad-4ae8-b652-4a1f9694428a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-05-05</startDate>
            <endDate>2023-05-05</endDate>
        </period>
    </context>
    <context id="C_3fc4f133-468c-4e2a-828c-774b0945c0ca">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:FortyVehicleFerryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_ba57f9dd-ca27-4248-8727-bc9983095efa">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_9e62d206-06dd-42d5-a27d-c90cc90990df">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_06f78687-0def-405a-baa0-8a975b546234">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_794803ce-d97e-4446-ba7a-1a2fd69d3f78">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_23da1c7a-3b6b-4c6c-866f-72f37f68421d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">gifi:ShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-12-01</startDate>
            <endDate>2023-12-01</endDate>
        </period>
    </context>
    <context id="C_0544c597-1d08-4a4e-8030-ada920dc1c4a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_7f0465c4-4ee4-4598-8765-2eff635d681a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <startDate>2023-11-06</startDate>
            <endDate>2023-11-06</endDate>
        </period>
    </context>
    <context id="C_bc4a4886-4017-4268-826f-76e476050225">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_b19e0574-d5db-429e-b9ea-18e4968c8435">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_92e058ee-fa6b-41c3-b3d6-f9722e8f48d1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:RemainingFortyVehicleFerryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_24b7e990-71af-44ce-907a-00c3c690b79e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:CashSettledRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_1cda6b85-7fa8-4c33-aaf0-76f037ac8dbf">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_a1761f83-7c5c-4336-b3f3-d87487bbf840">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_50aab56e-5238-43b1-99ef-89b0d0552b93">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_cae205c4-092f-40ce-becd-df88720df331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_af1abd01-f093-411d-bbb8-3fedcc55112c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-05-05</startDate>
            <endDate>2023-05-05</endDate>
        </period>
    </context>
    <context id="C_ebbc6533-3f2b-4249-918e-203985dcd36e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:ShortTermPremiumFinanceArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="C_72022df9-790b-49f8-8bfc-00431481897d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_c3a7e33f-3b2a-4e62-89ec-6b329f36ce78">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_8b8ad109-c04c-4dbc-a968-90a5cd94c64c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:GeneralLiabilityArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_c53b35c5-eb37-49cf-acb6-48c5c967a1d0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_65b19e72-420e-4aa7-9f18-0838a5d57560">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_398fb557-9f10-42cc-b522-240ff7e51ae1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_0c59df09-712a-47cb-b2d9-678570fe3989">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_ad31e239-36eb-4de9-adcd-d309cddc02e3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_445e78ae-06d3-41df-9768-d7b992aac97f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_f245e131-80fc-4498-83e5-e1095706280b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_ab576475-9920-402d-a6d4-86599a046a47">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_5dc5f49a-6d78-4f27-b6fd-cba90db18506">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_2157cccd-4322-435c-9ffb-a392a6e522c4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_10d79ba6-7b9d-404f-abff-543af2292ae2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_3a6ac62e-2ec1-4406-8670-91db6c3cb623">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_0269de45-8980-4198-802f-0b5468843a36">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:PerformanceBasedRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_18924d07-f6c4-4e2b-915b-55f0f0b7d733">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_ce912fd4-11a3-42fe-b755-4418d8982304">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_7b93b9fb-422c-4053-abd2-26d9ab39ec05">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_e86617dd-af33-41aa-8ea0-65f21a936e38">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_b5722d4b-25c9-4479-aa56-31845020b7af">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:RemainingFortyVehicleFerryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_2be31468-ff16-44f6-86af-8e8e108a34ad">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_675fc0ac-03b3-4668-8cf2-7bb640ea0347">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_9d017577-455b-4de6-8fba-e0c38d593225">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_ebf1736a-1170-492a-8214-ef457875bc5a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_28f7d076-30a1-4561-9acd-820691c07dc5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_be09cd52-4568-408b-bdb6-ba23ade96279">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_cd145452-ba68-4832-bbab-f2d69bbb37bc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_4a1745f1-d403-4e9b-927c-aec8bfb30e5a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_20faa71f-e80d-4bd6-a545-8479d7c110df">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_91e23f16-98d0-4e7b-8b3b-2b15f08dcf1d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_fba779cf-1af7-4885-a668-5672093d65b3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_640ef6aa-b5f2-4dad-958e-d37660c7f86a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_10d68f7a-a90d-431b-9e2a-da2598783742">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:NoteAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_4c201577-ca6e-4ad5-8fa3-8980f68f6ea6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_5c874480-56e2-4952-8695-f5343665429c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_9139f63d-9057-42c4-9b2f-a427e8f6dc0a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_96cb0217-26bb-4cf9-8b4e-f4235c892161">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_caf5d5fe-7f92-4d4b-9079-deba99a81eda">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:TimeBasedRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="C_fbe3999c-ec84-4b20-b7a8-cddd6373ae5d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_0583a672-521e-4eaf-a2a7-daf9543e70fa">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_410c80b6-ccc1-4936-8966-f3e944d59b81">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_fadbd496-c1ef-4862-b033-2b9e2de8ef5e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_45b1c6ba-852a-4bff-8537-06a247417f70">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_699b86a3-de20-4d0d-9749-221991b9bfb8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_49706537-7311-47c1-92fc-133ec168026b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_a65e9edb-0747-45b3-8cb2-47af918e5b15">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:FortyVehicleFerryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_6d90cd7b-8dee-4f6c-aeb5-be005a60fa04">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_33a77f56-24fd-401e-9f31-0464c3cd37bc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_45441188-7fd4-40fd-889e-58292a77a98a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherOperatingIncomeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_cbc768a4-e0c3-4cec-a01c-05e92d38b313">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_2a187e57-f37c-42cb-b040-9f912d512141">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_381fcc55-57f3-4b03-b7a7-9eb8efea19d7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_c216a8b8-8f77-405a-8676-71144cba1804">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherOperatingIncomeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_e3032ac6-3a56-44cc-a93b-8a3f692d0f6b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SuretyBondMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-03-19</startDate>
            <endDate>2018-03-19</endDate>
        </period>
    </context>
    <context id="C_934b968b-5d1d-469e-a030-b99ef2258abd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_68bfab3d-d457-4e66-807d-c03156337973">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_a0e7c22d-1634-4f42-8ab2-cdbce86f2df7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_9ebe2456-cc9f-43ae-bd16-513522a50e1e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">gifi:MpsvLitigationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_1d622621-1bd2-4b9d-9484-fbd8d9ee8de1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_a8ebeb7a-bb96-46e4-a1d7-165aa5761dc2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_3adcfaea-44fb-4459-a024-78c164bc3a40">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_b89d6df1-af26-4610-822c-ce4801eb8046">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_02f5f5e9-6d82-43b0-b083-9f5ec23011dd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_87a8f7e1-0291-4b40-a041-0eb5b58b8aa9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_0d8b698d-79c5-46e8-8ad9-490b93e810fc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_01ac159e-3c97-46af-b432-8dbdc656cd94">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">gifi:HoumaFacilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-02-01</startDate>
            <endDate>2024-02-29</endDate>
        </period>
    </context>
    <context id="C_fa386629-c7ec-4389-b0e0-17941db057e4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:CashSettledRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_2b1a1662-ff8a-4726-9d7d-8990daae98d8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_39b2f55f-413b-4bd7-a70a-93bfd3cdc4de">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_15ad06f3-cc87-490d-a652-cbef34e96aef">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_8cb46c35-a6a9-452c-8adf-30d5a5f42f40">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_8caa51a3-a9e6-46a9-b8a6-7e8b2d1e0f9b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_0cb87387-c0b6-4e37-9819-9b55ee7f470c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_de08cc50-172f-4488-a7cb-8e8aa181d563">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_f12de176-6bb7-44c6-a364-76db7bf9d4c3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <instant>2018-03-31</instant>
        </period>
    </context>
    <context id="C_7017de45-5833-4aed-b28c-0955d461c35e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_8ef6ff0d-f798-451f-a56a-21690e3539d0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_8ca68023-b032-418a-be42-f11f835f0de2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:PerformanceBasedRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_a4fb150a-2806-4d20-a9b8-e30b9e66a2df">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gifi:OtherIncomeExpenseNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_42223cfa-5545-4029-95db-8b9c0d2f26b0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:UnusualRiskOrUncertaintyByNatureAxis">gifi:HurricaneIdaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_4591485a-8e55-4cd0-8d54-1ae706046e0f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_266672af-617b-4fb8-b279-4e187afadc2d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_246f21ef-4b55-43a8-8366-c3934a370a15">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_9b386988-e37c-43b3-a8ff-0a6cee812527">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gifi:BalanceSheetDateClassifiedAsCurrentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_d862d658-577e-494e-8df1-aaaf02861fd5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_7093543c-c276-4e9c-89e1-84bdbfc16b9d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="C_ca3865b9-b250-441a-9831-67ce11a94901">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_05b19536-9bbd-4687-9739-a0cd2fc8009f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_833f9103-3927-46fc-a722-fc251a02e77f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_6e556d01-c547-458a-a98e-9b83be20cbf8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_6f9a329b-4226-4d40-989b-b48f609f1c3f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_76c0035d-6bbe-4dca-ad23-c0e017c4af95">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_2935e2a4-dafe-4535-93c8-3946a64d44ec">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:TimeAndMaterialsAndCostReimbursableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_4714cb78-99d0-481d-9df4-1009ce2cfc6c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="C_1bf7fc59-2a44-4d64-8947-7abe38b1173b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">gifi:ShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_b86efaab-ab97-4ab9-9b25-9a1aa5b52a98">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_4a193f8f-cc17-4e7e-87d5-3d5a87a85499">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_c7a6b99c-ab2a-4615-a17e-cbca4f0eabab">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_4a9335f0-add2-49d0-8e37-7a2c1d77be3f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:ShortTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_74d4f2b2-4a54-47f5-9e9f-ed053b426e3b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">gifi:OtherIncomeExpenseNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_dd42000e-614a-4544-9fb0-3702fb259f77">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-01</instant>
        </period>
    </context>
    <context id="C_a9c3a5c7-b40e-4bc7-8b0c-5ea9f856437f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:InsuranceFinanceAndGeneralLiabilityArrangementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_774fe221-71b2-438a-8da2-b46cda39d663">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_e05504c2-0ed9-4fe1-9d89-16d723ffed13">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:InsuranceFinanceAndGeneralLiabilityArrangementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_a3970fc1-85e8-40bd-8408-517bae191be3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_c1ff8c32-ee9b-4094-a536-3b612f449a7f">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_c430aba2-bce6-4893-b10b-7d09271ece32">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_9b792a7c-8c0c-4ee0-a691-f444b31ac32c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_585ab07a-4a7e-4414-848f-d778e266a6e2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_da17b24e-8d51-45f0-a249-36d148fe59c1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_9fd17654-bce1-4d02-9a97-4efc13f49f07">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">gifi:SeventyVehicleFerryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_0cfadcca-d5b0-49a0-adae-50a0fa885be4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerDMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_532635ec-5108-4ab6-b295-9aeae7f12d63">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_ebfe2964-144b-4a54-910b-ad1585bd7601">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_018dd156-4163-4547-bf83-69ef53d758df">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_dcfb10ab-a2a0-4052-b499-ab340825ac79">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_edc61289-8f24-4a94-b7bc-9f0f39c7452c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:GeneralLiabilityArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_340658b7-c5f6-4f9e-baf8-ee3628199f1b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_6303eb31-5b83-4da7-b2c0-7ec761e5f7e3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_0a349ea0-6c23-43e7-938c-d5d667e097f6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_ecfa9e75-7ee7-4840-92fb-cc49075d1648">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">gifi:OtherBasisOfPricingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_c6c931a9-8fbd-48f6-8d9c-9791cf80d297">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="C_03079662-2439-4b58-8a31-640aaece2927">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">gifi:PromissoryNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:NoteAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-11-06</instant>
        </period>
    </context>
    <context id="C_6d4a3762-a252-4d79-b2bf-af325c98237c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_d342c752-187b-4186-b7e8-0cdc98699744">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">gifi:TimeBasedRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_4eeb4eff-4542-494a-b131-7ceacf00ca5c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_68bd35ae-d7f6-4fc0-bf4e-4ea5fc4c6743">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_49d991ee-97c7-40ff-9bc7-8fb7d4273387">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">gifi:BalanceSheetDateClassifiedAsNoncurrentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">gifi:LCFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_f9105be5-208f-4b6e-90ee-08d64d638168">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_6d4194db-103e-4db0-8ec6-a3bd25c4c447">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_5d0f48ca-6ac2-4612-9d99-f090eec951de">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_6d7d296e-8308-421e-b161-9b8751b36e38">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">gifi:ShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_33ad9a6b-8e6e-4703-a364-62f40aaf9470">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ShipyardSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_7adcd642-c74c-48ef-ac50-7b6601a8cfc3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FabricationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_95eb78d7-d965-42b9-a3b5-ffafe58b4ab6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_ce6032be-9c89-4fa7-a4d6-516a38833742">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerDurationAxis">us-gaap:LongTermContractWithCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_e63efff0-f5d7-48b3-acc7-c3aa44976a25">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_314657af-8da0-44b1-a2fe-d29bf7c32141">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_c8639d00-e088-4473-8175-a7f6d3c3e0c6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_fa83d1c1-fd21-47b5-a1f9-3650ae12e262">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementOperatingActivitiesSegmentAxis">us-gaap:SegmentContinuingOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">gifi:NoteAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_20550a25-ca2c-414f-b8e6-5118763cd137">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <instant>2024-02-29</instant>
        </period>
    </context>
    <context id="C_12854efa-a02d-4d65-b817-b5e45dc6252b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <startDate>2023-05-05</startDate>
            <endDate>2023-05-05</endDate>
        </period>
    </context>
    <context id="C_b7a3279c-fdc6-4bb6-b63e-a8ed8e06e4e7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">gifi:MpsvLitigationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_ebe93e40-798e-4e52-a220-9e5adb2036a6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:FerryProjectsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_5603366b-aec4-44b8-94c7-5351a28ea112">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">gifi:ServicesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_4e668483-9363-48fa-b143-7dd0b392d882">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="C_7c189e04-103c-4e94-8dd4-b12fb43dc0b7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001031623</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">gifi:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <unit id="U_pure">
        <measure>pure</measure>
    </unit>
    <unit id="U_shares">
        <measure>shares</measure>
    </unit>
    <unit id="U_Vechicle">
        <measure>gifi:Vechicle</measure>
    </unit>
    <unit id="U_Vessel">
        <measure>gifi:Vessel</measure>
    </unit>
    <unit id="U_Segment">
        <measure>gifi:Segment</measure>
    </unit>
    <unit id="U_USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="U_UnitedStatesOfAmericaDollarsShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_ac811702-df53-4743-8f02-9aa300a65695">0001031623</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_c132d2be-c7ce-4d60-9546-038af719a1f7">false</dei:AmendmentFlag>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="C_caf5d5fe-7f92-4d4b-9079-deba99a81eda"
      id="F_38f24eea-c334-42f0-ba26-4b3b0b87d461">P2Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <dei:DocumentFiscalPeriodFocus
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_704db790-941b-4006-86ef-ab2c5e9a40cf">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityRegistrantName
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_22f1176b-ea45-4508-8bd7-4cc5270af876">Gulf Island Fabrication, Inc.</dei:EntityRegistrantName>
    <us-gaap:PreferredStockNoParValue
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      id="F_353e6f25-5334-461f-bdfc-c9d489a4cbca"
      unitRef="U_UnitedStatesOfAmericaDollarsShare"
      xsi:nil="true"/>
    <us-gaap:PreferredStockNoParValue
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      id="F_49b424f4-788f-4eca-a50c-26ac4f7ab2b1"
      unitRef="U_UnitedStatesOfAmericaDollarsShare"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      id="F_9361e155-c9b3-447a-99a3-19c7cd143b31"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      id="F_dc2c70d5-cfd2-41a8-a2dd-995d393aafad"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:CommonStockNoParValue
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      id="F_5a1d0188-f058-4104-8963-d6a758d07493"
      unitRef="U_UnitedStatesOfAmericaDollarsShare"
      xsi:nil="true"/>
    <us-gaap:CommonStockNoParValue
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      id="F_d235468d-d439-4ad8-b4d5-65df2b1abeab"
      unitRef="U_UnitedStatesOfAmericaDollarsShare"
      xsi:nil="true"/>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_532635ec-5108-4ab6-b295-9aeae7f12d63"
      id="F_0afe6cb2-44da-43fa-ad5a-e2651f8bd43e">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="C_532635ec-5108-4ab6-b295-9aeae7f12d63"
      id="F_a8a89eb0-e986-42d3-855c-14bcaa1d2563">P1Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      id="F_b8306089-f1e0-427d-b2eb-9198d2ff7286">http://fasb.org/us-gaap/2023#OtherAssetsNoncurrent</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      id="F_1145cb82-332f-4336-832e-9a7b7c5bd883">http://fasb.org/us-gaap/2023#LiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      id="F_04f8f0bf-472b-4379-b781-04b0610392b1">http://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <dei:DocumentType
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_b6de101d-4cfd-476c-8e0c-203aedef42ce">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_907a723b-358d-40b2-9eac-e7227f3f2fe0">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_90138354-cf93-4f6d-a129-17f5fed018ce">2023-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_d7646900-ef84-4f9b-b758-80962f86d875">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_67e49d64-ccd0-407f-b12c-da36f0ee463e">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_c0b3c7ef-ffae-4037-9b67-86a9f50ae0f3">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_438f388d-1df4-4f2f-8642-cbf101718446">001-34279</dei:EntityFileNumber>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_4ba49189-3f4a-4e69-9c7a-da6cfcf46f74">LA</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_6cec3fbb-bf86-4343-91e6-b447d65f4102">72-1147390</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_bd6199ab-5ad6-464f-b8b7-f6c66d3f602e">2170 Buckthorne Place</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_3d96f9ee-ac9b-432b-992b-5e05857377d0">Suite 420</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_6e803953-65a9-4702-bff0-e3e54bcd57e8">The Woodlands</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_596ef7b6-909a-4bd7-92c1-59a3d7967694">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_4f3fa60a-2c12-479f-81f3-872a5bd24c80">77380</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_6786abfe-545a-41b7-9a61-139c3c5ccfd2">713</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_dc66ae70-085a-4a95-aabc-5a1fe838f0e1">714-6100</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_14b497a7-3b0c-4228-a253-b919c580b553">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_e2129929-a1c1-45b3-b9e0-dab8528311c4">GIFI</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_05334fe7-5e0f-4bf3-be98-84de0bfef37a">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_92efd62c-8ec0-4b21-82a8-7ecf328778ba">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_27cfb0f1-8f3c-4a5e-9278-1eeb73d946f9">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_50316ce8-1377-4d7e-9888-5225ab598f42">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_6faed703-c60e-4754-abf8-52a047931037">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_265bc932-018b-4597-99ee-113daed0ce99">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_33597b5c-0f0d-4e80-a572-a0c5190e08d8">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_c1b37a5e-bcd1-458f-a88f-83f777611f12">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_1eaf7ac7-0a4d-4d9a-88cb-10929680f170">false</dei:IcfrAuditorAttestationFlag>
    <dei:DocumentFinStmtErrorCorrectionFlag
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_71b4039b-1625-4993-a9b2-517f97166c14">false</dei:DocumentFinStmtErrorCorrectionFlag>
    <dei:EntityShellCompany
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_efa30aa1-3cc8-4f07-af6b-d565d689a88a">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="C_8a4ed5c4-6d4e-45f9-8851-a0debd1b7aad"
      decimals="0"
      id="F_be422daa-2c5f-46ea-a8a8-3a1a05d6c04a"
      unitRef="U_USD">37696000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="C_20550a25-ca2c-414f-b8e6-5118763cd137"
      decimals="INF"
      id="F_a5638caa-95ab-41ee-ade9-fe6b4d5fa80a"
      unitRef="U_shares">16197031</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_0ebb27fd-ef46-42f8-a0e3-98f0888c405a">&lt;p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:4pt;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;DOCUMENTS INCORPORATED BY REFERENCE&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"&gt;Portions of the registrant&#x2019;s definitive proxy statement to be prepared for use in connection with the registrant&#x2019;s 2024 annual meeting of shareholders have been incorporated by reference into Part III of this Annual Report on Form 10-K.&lt;/span&gt;&lt;/p&gt;</dei:DocumentsIncorporatedByReferenceTextBlock>
    <dei:AuditorFirmId
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_815c48aa-777d-46ec-967e-49e4b64a03ca">42</dei:AuditorFirmId>
    <dei:AuditorName
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_d04f682a-0da9-46f1-949a-f1044e95e07d">Ernst &amp; Young LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_de5f2d1d-f8d7-4249-adae-66c070585857">Houston, Texas</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_eedd12da-33e8-4914-b29e-4b49beab1ebc"
      unitRef="U_USD">38176000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_c9d444ea-5df1-41cf-8090-ae10aa818dcb"
      unitRef="U_USD">33221000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_04f5eea4-a96e-41e1-bc13-563e4da8ad29"
      unitRef="U_USD">1475000</us-gaap:RestrictedCashCurrent>
    <us-gaap:RestrictedCashCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_093a61f7-502c-4cc5-99e9-8f4ae23ed80e"
      unitRef="U_USD">1603000</us-gaap:RestrictedCashCurrent>
    <us-gaap:HeldToMaturitySecuritiesCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_fb189fcb-7512-433c-86de-308d57f490c3"
      unitRef="U_USD">8233000</us-gaap:HeldToMaturitySecuritiesCurrent>
    <us-gaap:HeldToMaturitySecuritiesCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_b6df236e-ee93-4b7c-bbad-71b5dce7ed72"
      unitRef="U_USD">9905000</us-gaap:HeldToMaturitySecuritiesCurrent>
    <us-gaap:ContractReceivableDueOneYearOrLess
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_a2817c84-6647-4605-8798-baeb48022064"
      unitRef="U_USD">36298000</us-gaap:ContractReceivableDueOneYearOrLess>
    <us-gaap:ContractReceivableDueOneYearOrLess
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_ac644b2e-2f68-4ce4-a43a-68ca2466a7b9"
      unitRef="U_USD">29427000</us-gaap:ContractReceivableDueOneYearOrLess>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_3fc95c39-781b-4c92-982d-a69e4f56fad0"
      unitRef="U_USD">2739000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_5217132d-620b-4e10-b726-fec9052974ed"
      unitRef="U_USD">4839000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_5538b003-8035-4490-9d18-cd44f2017c24"
      unitRef="U_USD">6994000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_6850c94f-9fd6-4735-9c8d-98ce74672059"
      unitRef="U_USD">6475000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:InventoryNet
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_a7fbce90-b257-478e-981c-05b7187b108b"
      unitRef="U_USD">2072000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_789f4eb6-c695-4acf-8702-5bd994e94c02"
      unitRef="U_USD">1599000</us-gaap:InventoryNet>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_6bd064a6-033f-45a5-8e18-b59bdd7c4425"
      unitRef="U_USD">5640000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:AssetsCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_ec3820c5-8f5e-4678-9242-8879b0c8958b"
      unitRef="U_USD">101627000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_c2c127db-2303-48ac-83b3-ba3aa35ca877"
      unitRef="U_USD">87069000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_d68fb1ff-ef87-4c9b-ab70-07fd14571098"
      unitRef="U_USD">23145000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_12d643ef-08f2-40ea-b270-c13c21a49ce4"
      unitRef="U_USD">31154000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_55177fdb-4888-4df5-991a-9c72abc67f23"
      unitRef="U_USD">2217000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_20aedf02-9680-449e-b46b-76479d439b6d"
      unitRef="U_USD">2217000</us-gaap:Goodwill>
    <us-gaap:OtherIntangibleAssetsNet
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_78ecd0d5-24aa-4b90-a165-c0a5db4b260e"
      unitRef="U_USD">700000</us-gaap:OtherIntangibleAssetsNet>
    <us-gaap:OtherIntangibleAssetsNet
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_5a6b4c5a-9fb6-4c8c-8466-15b7cb41d8df"
      unitRef="U_USD">842000</us-gaap:OtherIntangibleAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_06f9dc4f-3645-4678-9f2c-a353e77d46bf"
      unitRef="U_USD">739000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_838acb19-42b9-4778-af0f-5d0d0140632c"
      unitRef="U_USD">13584000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_8d1d5912-45a0-44c5-8cf9-a197acb30821"
      unitRef="U_USD">128428000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_2d950e38-1af9-4570-8be3-c29dd3ccde6c"
      unitRef="U_USD">134866000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_9f0d2d4e-ba8a-445c-88e2-53df1d540dfa"
      unitRef="U_USD">8466000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_56552936-3615-47a2-a538-41087981c63c"
      unitRef="U_USD">8310000</us-gaap:AccountsPayableCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_6aa4104a-1e52-4b3c-b684-24a17b3229a7"
      unitRef="U_USD">5470000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_553ecda2-dcd5-4353-861c-5220edf9a93b"
      unitRef="U_USD">8196000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_24fc1223-233a-4228-a9e2-9e17f10329e4"
      unitRef="U_USD">14836000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_f19c45df-a559-4236-a663-c1b65b6c5c54"
      unitRef="U_USD">14283000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_69e602c8-06d4-4ac7-a5b3-911ba0b89c03"
      unitRef="U_USD">1075000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_208f2081-28cc-44b7-8018-a0b022edc7d4"
      unitRef="U_USD">29847000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_a1a8d294-b25a-4cdc-be8d-e2804d39bffc"
      unitRef="U_USD">30789000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_c76bb321-6346-4114-ab1e-dfb12ba327d6"
      unitRef="U_USD">18925000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_be448eef-9156-480b-918a-9f50f25b2aa8"
      unitRef="U_USD">685000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_2d51cd2b-027b-483b-8669-03e620f30368"
      unitRef="U_USD">1453000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_9472dd4a-1481-4519-a929-5486a0ef284a"
      unitRef="U_USD">49457000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_6edab6b7-4e1d-49b7-8149-da42051363fb"
      unitRef="U_USD">32242000</us-gaap:Liabilities>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="INF"
      id="F_3e30191c-e9d2-44f8-8a6e-1341049cdd86"
      unitRef="U_shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="INF"
      id="F_0bc985d7-ddfc-4c00-8795-8b12c0ad39f5"
      unitRef="U_shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="INF"
      id="F_7fbb1353-667c-44d8-95b2-fabeeb54c31f"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="INF"
      id="F_a672b53d-aff3-4660-9153-b923a9cc4406"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="INF"
      id="F_4bea829e-ccdb-48d9-9bb2-3081f1a8d2e7"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="INF"
      id="F_1bedc627-3c70-40d4-8374-ddbe9a27bf2b"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="INF"
      id="F_3ee519d6-9c5b-440c-af64-46b6a5a37312"
      unitRef="U_shares">30000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="INF"
      id="F_bd37dbe9-42f8-4ee2-bfd1-a965b8e962fa"
      unitRef="U_shares">30000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_afff6dcf-9dbe-4197-a709-1b24c173e856"
      unitRef="U_shares">16258000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_656b15f5-ed0f-4196-90d5-374087d5ba39"
      unitRef="U_shares">16258000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_2cf741d5-284a-4051-b3a3-f99b3ffb40bb"
      unitRef="U_shares">15973000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_58a404c0-ed74-4cc5-94ee-f0989c5f4a82"
      unitRef="U_shares">15973000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_01207d37-ee67-43e0-b9c3-44037d2a1ede"
      unitRef="U_USD">11729000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_e589686c-1a0f-4b91-9435-718e07719413"
      unitRef="U_USD">11591000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_96fdc2b3-1b1e-4119-9172-7db507a6c1dc"
      unitRef="U_USD">108615000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_63ee3781-e717-41e8-9e3a-1ced42f56988"
      unitRef="U_USD">107372000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_52bc0b28-10c4-41dc-aa17-dfbb542d48e8"
      unitRef="U_USD">-41373000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_692aac43-d905-4399-8278-0e77e3e1e79c"
      unitRef="U_USD">-16339000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_fd7c2fc2-c3c6-4352-b2c0-670286d37920"
      unitRef="U_USD">78971000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_4f7f301c-7f25-491b-a4c7-e11056ff0ebf"
      unitRef="U_USD">102624000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_a36e1020-2227-416a-8215-570859a97539"
      unitRef="U_USD">128428000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_8fc59fcd-d411-4171-a356-f457f67cc94b"
      unitRef="U_USD">134866000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_19e68dab-5b68-492c-95ca-40a7080b7f0c"
      unitRef="U_USD">151067000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_f23d3b0d-70f6-4707-bacb-34887c20df25"
      unitRef="U_USD">142320000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_1b45eef6-0220-4dff-9661-46f3cbd1b0a4"
      unitRef="U_USD">162968000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_5e926e82-1ea6-4e8b-ad1e-7ba69729a23c"
      unitRef="U_USD">134425000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_3bcd3d5f-7351-4caf-a262-f300962d16f5"
      unitRef="U_USD">-11901000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_22043ec3-26d7-446b-aec7-12b5b255c06d"
      unitRef="U_USD">7895000</us-gaap:GrossProfit>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_ba88a4d9-8f39-4a77-9ea0-207b9906c533"
      unitRef="U_USD">16278000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_e49e237e-066d-4217-9cb0-fc6ea18990f8"
      unitRef="U_USD">18214000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OtherOperatingIncomeExpenseNet
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_443130b6-fa0d-4d12-9d59-b2465e44680e"
      unitRef="U_USD">2296000</us-gaap:OtherOperatingIncomeExpenseNet>
    <us-gaap:OtherOperatingIncomeExpenseNet
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_4ddd004c-5c8c-4dd5-b04a-fe11edff80cc"
      unitRef="U_USD">6904000</us-gaap:OtherOperatingIncomeExpenseNet>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_2365bb69-e8b0-4a69-b2dc-767498cee6ae"
      unitRef="U_USD">-25883000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_44b0562e-e0e0-4a8d-8bd1-caa2c773bdfb"
      unitRef="U_USD">-3415000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_5806d244-6893-4933-bd1b-bff63167b9ed"
      unitRef="U_USD">1440000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_09e8ef9a-9191-40eb-a4bb-ee9c23f3e034"
      unitRef="U_USD">86000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_4b91273f-2864-4dbd-846b-798ac71c03df"
      unitRef="U_USD">-24443000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_390a75ac-8801-448e-bc82-5110f132f40b"
      unitRef="U_USD">-3329000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_e7fa5637-7fd3-4db0-8a19-48dcecb2fbda"
      unitRef="U_USD">-41000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_9bc36a8c-9d5e-4ffc-af43-1ea111f854c8"
      unitRef="U_USD">23000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_20112d8a-68f8-429d-8a46-67a0ddb9d5df"
      unitRef="U_USD">-24402000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_344500c6-89fc-4286-89de-527127e2e45c"
      unitRef="U_USD">-3352000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="2"
      id="F_9b43ffa4-3f55-41f2-82f0-43eb3ae3899f"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">-1.51</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="2"
      id="F_329eeeaf-268b-46a4-b7fc-3cddd96086b5"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">-1.51</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="2"
      id="F_8591d88d-d809-4c59-8e95-295a8344fba1"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">-0.21</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="2"
      id="F_7a715bcb-f87b-4fc2-815b-6d941498aaf1"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">-0.21</us-gaap:EarningsPerShareDiluted>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_e86617dd-af33-41aa-8ea0-65f21a936e38"
      decimals="-3"
      id="F_1137d2e5-6011-4e22-8562-e78bf495a2f0"
      unitRef="U_shares">15622000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_e86617dd-af33-41aa-8ea0-65f21a936e38"
      decimals="-3"
      id="F_f03452b0-52be-4c81-831c-77f73f7a51fe"
      unitRef="U_USD">11384000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_c6c931a9-8fbd-48f6-8d9c-9791cf80d297"
      decimals="-3"
      id="F_66e6b371-cd51-45d2-9853-1810aa90b7f3"
      unitRef="U_USD">105511000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_50f0b57f-c5ce-425a-b5a2-ea55f805b900"
      decimals="-3"
      id="F_71fe0d71-dacb-4205-b2cc-23d47b209901"
      unitRef="U_USD">-12987000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_445e78ae-06d3-41df-9768-d7b992aac97f"
      decimals="-3"
      id="F_c9d39633-1b3d-49d6-96d0-540ee846eef2"
      unitRef="U_USD">103908000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_2b1a1662-ff8a-4726-9d7d-8990daae98d8"
      decimals="-3"
      id="F_476b9cc3-9b07-4af8-9b00-964157e9341c"
      unitRef="U_USD">-3352000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_8c979257-1a15-4af9-bfc2-e19fe8bb95c4"
      unitRef="U_USD">-3352000</us-gaap:NetIncomeLoss>
    <gifi:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares
      contextRef="C_5d0f48ca-6ac2-4612-9d99-f090eec951de"
      decimals="-3"
      id="F_9bbc9156-78b9-428b-8532-3390d374026e"
      unitRef="U_shares">351000</gifi:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares>
    <gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock
      contextRef="C_5d0f48ca-6ac2-4612-9d99-f090eec951de"
      decimals="-3"
      id="F_443a4dd2-d7a6-40e5-96ea-070e848aec5d"
      unitRef="U_USD">-23000</gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock>
    <gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock
      contextRef="C_4df14977-c162-4e59-95d4-a309d321817a"
      decimals="-3"
      id="F_74c1c2ef-99d8-47c6-9dc8-0e27a78c126c"
      unitRef="U_USD">-211000</gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock>
    <gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_843b7a00-1590-44a9-9853-791dd73e3fba"
      unitRef="U_USD">-234000</gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_5d0f48ca-6ac2-4612-9d99-f090eec951de"
      decimals="-3"
      id="F_ed358fb0-69c8-4d08-8e6d-5747fec2a091"
      unitRef="U_USD">230000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_4df14977-c162-4e59-95d4-a309d321817a"
      decimals="-3"
      id="F_a1bdf3e6-75b8-4e20-b82a-47831c1612e1"
      unitRef="U_USD">2072000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_8492fbc7-b1c5-47fc-a3e1-59b4015773ea"
      unitRef="U_USD">2302000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_3a6ac62e-2ec1-4406-8670-91db6c3cb623"
      decimals="-3"
      id="F_d5135b28-b996-48ea-a8a0-a3ee24453148"
      unitRef="U_shares">15973000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_3a6ac62e-2ec1-4406-8670-91db6c3cb623"
      decimals="-3"
      id="F_faf78946-7cff-4d0b-b203-57d9b31425b7"
      unitRef="U_USD">11591000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_6d4a3762-a252-4d79-b2bf-af325c98237c"
      decimals="-3"
      id="F_57c5c507-6dde-4b36-8536-5ddc04d4e888"
      unitRef="U_USD">107372000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b89d6df1-af26-4610-822c-ce4801eb8046"
      decimals="-3"
      id="F_0ea9e878-2409-4b89-87c4-787bef520731"
      unitRef="U_USD">-16339000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_a6bac86c-6ddb-4a6a-b752-62d82d8aa567"
      unitRef="U_USD">102624000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_2ec33251-854d-4681-ad3f-7cc527f3834d"
      decimals="-3"
      id="F_ad300c84-aeab-4f66-bef7-ac6d26c84e26"
      unitRef="U_USD">-632000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_018dd156-4163-4547-bf83-69ef53d758df"
      decimals="-3"
      id="F_d8670d25-d962-4581-92b7-18a183b21943"
      unitRef="U_USD">-632000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_f9105be5-208f-4b6e-90ee-08d64d638168"
      decimals="-3"
      id="F_2cf0b131-3ca8-4fdc-8260-8f393f7074a0"
      unitRef="U_shares">15973000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_f9105be5-208f-4b6e-90ee-08d64d638168"
      decimals="-3"
      id="F_6e2abf8c-0730-4ee0-bea3-a86f0539a783"
      unitRef="U_USD">11591000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_4f463aa3-6bb0-4982-868d-be2ebc2fed2b"
      decimals="-3"
      id="F_1cb5f4ab-6f21-4e4f-b11a-6125d32d8381"
      unitRef="U_USD">107372000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_ad31e239-36eb-4de9-adcd-d309cddc02e3"
      decimals="-3"
      id="F_dedc4bc2-a933-49c8-a478-c423ebec79f3"
      unitRef="U_USD">-16971000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_fba779cf-1af7-4885-a668-5672093d65b3"
      decimals="-3"
      id="F_3f2c61ed-1e67-4201-85e3-3a95fc3a973b"
      unitRef="U_USD">101992000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_33a77f56-24fd-401e-9f31-0464c3cd37bc"
      decimals="-3"
      id="F_a15ada1b-75d8-44b0-bad0-19927020df79"
      unitRef="U_USD">-24402000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_7e729e42-73b9-4bdf-95c0-9fad287263d1"
      unitRef="U_USD">-24402000</us-gaap:NetIncomeLoss>
    <gifi:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares
      contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd"
      decimals="-3"
      id="F_f4221ee5-0916-4a51-86f8-edbd07bd97ce"
      unitRef="U_shares">315000</gifi:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNetInShares>
    <gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock
      contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd"
      decimals="-3"
      id="F_c7565e3a-ebb7-4ccb-a542-5e4b6fc5485a"
      unitRef="U_USD">-48000</gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock>
    <gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock
      contextRef="C_c10c4ca9-3d46-4b21-aa90-73868cd784b0"
      decimals="-3"
      id="F_3ffa1732-09be-4300-850c-20e905337460"
      unitRef="U_USD">-434000</gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock>
    <gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_d1eb7511-eb17-4e34-847f-f020b0be2bd1"
      unitRef="U_USD">-482000</gifi:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationVestingOfRestrictedStock>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd"
      decimals="-3"
      id="F_35e4b752-a867-405d-b728-711ed9d4895a"
      unitRef="U_USD">199000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_c10c4ca9-3d46-4b21-aa90-73868cd784b0"
      decimals="-3"
      id="F_ec8fa7dc-078b-4fd8-9387-7c744e9e91bd"
      unitRef="U_USD">1792000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_6bd458f4-5fda-481e-9b4c-8d42c48a99c4"
      unitRef="U_USD">1991000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd"
      decimals="-3"
      id="F_0c6e54d9-647f-4081-90c7-f7967460d59e"
      unitRef="U_shares">30000</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_7a2422e6-9694-4625-92c1-636cf9a4a8dd"
      decimals="-3"
      id="F_6f616c14-260c-4894-a0fc-3b429520261c"
      unitRef="U_USD">13000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_c10c4ca9-3d46-4b21-aa90-73868cd784b0"
      decimals="-3"
      id="F_6aca9841-68be-4672-b4e2-f951f9e1fcb4"
      unitRef="U_USD">115000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_c5d5482a-9f38-47b7-aa4b-fba0aed6b48b"
      unitRef="U_USD">128000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_68bd35ae-d7f6-4fc0-bf4e-4ea5fc4c6743"
      decimals="-3"
      id="F_6d114ef4-ae87-4857-aaa5-5ce4f3762999"
      unitRef="U_shares">16258000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="C_68bd35ae-d7f6-4fc0-bf4e-4ea5fc4c6743"
      decimals="-3"
      id="F_24b4840d-eb7f-4f85-8607-6f7440b3343f"
      unitRef="U_USD">11729000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_49706537-7311-47c1-92fc-133ec168026b"
      decimals="-3"
      id="F_2266aa94-5d71-4181-9fd2-49c4fb33eea4"
      unitRef="U_USD">108615000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_02f5f5e9-6d82-43b0-b083-9f5ec23011dd"
      decimals="-3"
      id="F_826fa9ca-9a69-4510-8bb0-39d9a32814c5"
      unitRef="U_USD">-41373000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_24861327-6d72-4409-81f5-62ff930ea488"
      unitRef="U_USD">78971000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_4771455b-abfa-4a33-b918-785f2ac259e0"
      unitRef="U_USD">-24402000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_650d473e-cd28-490b-b60b-ee672e142f05"
      unitRef="U_USD">-3352000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_63adfc4d-bb81-4725-9460-9383389871dd"
      unitRef="U_USD">5466000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_50e526d3-f835-4ebd-868c-a51cd8deb1d3"
      unitRef="U_USD">5098000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:AssetImpairmentCharges
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_bca6c083-f4b4-498a-a97a-94fc7108308b"
      unitRef="U_USD">484000</us-gaap:AssetImpairmentCharges>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_568aba96-0641-4bcb-90e7-3f278d4cbd05"
      unitRef="U_USD">-410000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_052dbf21-7de2-480e-8b85-3b825fc3fd14"
      unitRef="U_USD">-27000</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_a826a125-b392-482d-8047-18d3e29775c8"
      unitRef="U_USD">-19000</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:InsuranceRecoveries
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_f4f684a4-5f3c-4f4a-a944-b358e8c9e17d"
      unitRef="U_USD">571000</us-gaap:InsuranceRecoveries>
    <us-gaap:InsuranceRecoveries
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_133264b3-eed8-4c42-a345-fb0741dd2cc0"
      unitRef="U_USD">1200000</us-gaap:InsuranceRecoveries>
    <us-gaap:ShareBasedCompensation
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_8eb74ea9-7063-4756-bf49-e47ef21f0397"
      unitRef="U_USD">1991000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_12004109-d807-4570-b943-78702c01983d"
      unitRef="U_USD">2302000</us-gaap:ShareBasedCompensation>
    <us-gaap:IncreaseDecreaseInReceivables
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_98379bd0-5f81-40d2-8e4e-1cf0a81116aa"
      unitRef="U_USD">7093000</us-gaap:IncreaseDecreaseInReceivables>
    <us-gaap:IncreaseDecreaseInReceivables
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_af46007b-5135-4028-8692-3d5036771eda"
      unitRef="U_USD">13441000</us-gaap:IncreaseDecreaseInReceivables>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_95d803c4-56b5-4013-bd50-f6902e4c50ab"
      unitRef="U_USD">-2100000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_2f55e799-0e98-4fef-9568-ee863b60fe03"
      unitRef="U_USD">80000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <gifi:IncreaseDecreaseInPrepaidExpenseAndOtherAssets
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_4e3aadb1-792d-4dad-b524-8311983010ed"
      unitRef="U_USD">133000</gifi:IncreaseDecreaseInPrepaidExpenseAndOtherAssets>
    <gifi:IncreaseDecreaseInPrepaidExpenseAndOtherAssets
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_59a0ba56-1dd4-433e-a537-d423f4acc5b0"
      unitRef="U_USD">-2224000</gifi:IncreaseDecreaseInPrepaidExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_0105f483-e332-42d3-86dd-9073e40b9863"
      unitRef="U_USD">-9000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_d66fd4fc-dbc4-47b9-bf61-657312e5db2b"
      unitRef="U_USD">-1088000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_6d01598c-f5dc-4190-96c1-8cd51c4d04a9"
      unitRef="U_USD">-2726000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_4e112e88-7082-43bb-ae4b-edcd38bbfe81"
      unitRef="U_USD">1548000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_61099ab3-18ce-4b63-9bca-2542baf1b3d2"
      unitRef="U_USD">1206000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_f2a03deb-56d6-44bf-9298-9db3006c3626"
      unitRef="U_USD">-561000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_1ffb334e-2c3d-4f53-8c81-28ac99e21195"
      unitRef="U_USD">-31751000</us-gaap:IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_d9d211cc-93d7-4b67-a9c0-9ed0258b7864"
      unitRef="U_USD">876000</us-gaap:IncreaseDecreaseInOtherNoncurrentAssetsAndLiabilitiesNet>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_316f5a92-64dd-4e7b-aeb1-6088a874705f"
      unitRef="U_USD">7197000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_e5654c0a-3d63-4ce4-be10-387f1609bd1b"
      unitRef="U_USD">-8923000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_8472e1d2-e206-4018-9306-16edc5f86ac6"
      unitRef="U_USD">2876000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_ac697b57-1864-4583-9cf5-ef9f0a645ae2"
      unitRef="U_USD">3086000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_7b7a7d28-eb4a-45a9-8ed3-25b7eaa46d57"
      unitRef="U_USD">886000</us-gaap:ProceedsFromDivestitureOfBusinessesNetOfCashDivested>
    <us-gaap:ProceedsFromSaleOfMachineryAndEquipment
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_379ecebf-dd38-4c1b-b8c7-e1debb2b0522"
      unitRef="U_USD">456000</us-gaap:ProceedsFromSaleOfMachineryAndEquipment>
    <us-gaap:ProceedsFromSaleOfMachineryAndEquipment
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_5ad1b313-1ef1-4e46-9413-34934c6a918e"
      unitRef="U_USD">2035000</us-gaap:ProceedsFromSaleOfMachineryAndEquipment>
    <gifi:ProceedsFromPropertyInsurancePolicy
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_90db66cb-5020-4225-b8ea-ed3ba143d18e"
      unitRef="U_USD">245000</gifi:ProceedsFromPropertyInsurancePolicy>
    <gifi:ProceedsFromPropertyInsurancePolicy
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_ec74fe54-c553-4b47-a6d6-45f51bd23fbe"
      unitRef="U_USD">1200000</gifi:ProceedsFromPropertyInsurancePolicy>
    <us-gaap:PaymentsToAcquireShortTermInvestments
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_d7c960fc-c57d-465c-b125-d287830fed82"
      unitRef="U_USD">39028000</us-gaap:PaymentsToAcquireShortTermInvestments>
    <us-gaap:PaymentsToAcquireShortTermInvestments
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_9c12a0e1-0571-461a-a9e2-fe2138c4b1e5"
      unitRef="U_USD">9905000</us-gaap:PaymentsToAcquireShortTermInvestments>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_a8d65442-6cdb-4bfb-b41e-635f8ec40255"
      unitRef="U_USD">40700000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_28eded61-e651-4431-ab5f-fda2285f4fad"
      unitRef="U_USD">-503000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_0ee9b565-db0a-496d-bfe9-711e789f219e"
      unitRef="U_USD">-8870000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <gifi:PaymentsOnInsuranceFinanceArrangement
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_a51efede-7876-44e4-8c4c-7b8a1eabbded"
      unitRef="U_USD">1257000</gifi:PaymentsOnInsuranceFinanceArrangement>
    <gifi:PaymentsOnInsuranceFinanceArrangement
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_967a02b9-a3d4-4cfd-9338-2b85bf2ef49f"
      unitRef="U_USD">1738000</gifi:PaymentsOnInsuranceFinanceArrangement>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_2c20ffbd-4e54-45a4-9adf-534356b710b4"
      unitRef="U_USD">128000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_85fcc5da-d8e1-42eb-8dfc-e99c18842ee9"
      unitRef="U_USD">482000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_cddcd6f5-91b1-4b2c-b895-90880ec9968a"
      unitRef="U_USD">234000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_f1c983a4-472d-441f-adaa-8e0781b1541d"
      unitRef="U_USD">-1867000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_9511458f-d713-452c-b70a-dc3e7345f563"
      unitRef="U_USD">-1972000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_4bacb918-2d86-45ae-8124-7283cd207904"
      unitRef="U_USD">4827000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_2ed896d4-f1ee-472a-bb8f-1b8fd82751e3"
      unitRef="U_USD">-19765000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_2e63c662-301b-456c-aca7-053cfbb9d3a0"
      unitRef="U_USD">34824000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_445e78ae-06d3-41df-9768-d7b992aac97f"
      decimals="-3"
      id="F_9ae7fa9d-28b2-4bd2-ad30-cffd8de1760a"
      unitRef="U_USD">54589000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_8e4297df-f6f2-44a0-88a5-4be23444e36f"
      unitRef="U_USD">39651000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_3bc50f2d-f768-4e8e-81f6-681a28621ee9"
      unitRef="U_USD">34824000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_9ae051bf-84a2-4a93-9764-117704ac1561"
      unitRef="U_USD">49000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_bda12324-f1c6-4048-8f74-bea84b6fbfe7"
      unitRef="U_USD">149000</us-gaap:InterestPaidNet>
    <gifi:CapitalExpendituresExcludedFromAccountsPayable
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_4aa93167-d5b5-4e2f-84db-065528b9a63d"
      unitRef="U_USD">383000</gifi:CapitalExpendituresExcludedFromAccountsPayable>
    <gifi:CapitalExpendituresExcludedFromAccountsPayable
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_7dde198a-b11e-4e62-915b-e08b00c06e35"
      unitRef="U_USD">217000</gifi:CapitalExpendituresExcludedFromAccountsPayable>
    <gifi:PropertyPlantandEquipmentReclassificationtoHeldforsale
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_517222a4-36cc-481d-beb8-9296f4c9e2ef"
      unitRef="U_USD">5640000</gifi:PropertyPlantandEquipmentReclassificationtoHeldforsale>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_dc29bc62-6078-4051-b50d-21f244e516af">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1. ORGANIZATION AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nature of Operations&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gulf Island Fabrication, Inc. (together with its subsidiaries, &#x201c;Gulf Island,&#x201d; &#x201c;the Company,&#x201d; &#x201c;we,&#x201d; &#x201c;us&#x201d; and &#x201c;our&#x201d;) is a leading fabricator of complex steel structures and modules and a provider of specialty services, including project management, hookup, commissioning, repair, maintenance, scaffolding, coatings, welding enclosures, civil construction and staffing services to the industrial and energy sectors. Our customers include U.S. and, to a lesser extent, international energy producers; refining, petrochemical, LNG, industrial and power operators; and EPC companies. We currently operate and manage our business through &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;three&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; operating divisions (&#x201c;Services&#x201d;, &#x201c;Fabrication&#x201d; and &#x201c;Shipyard&#x201d;) and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;one&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; non-operating division (&#x201c;Corporate&#x201d;), which represent our reportable segments. Our corporate headquarters is located in The Woodlands, Texas and our primary operating facilities are located in Houma, Louisiana (&#x201c;Houma Facilities&#x201d;). See Note 9 for further discussion of our reportable segments.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In the second quarter 2021, we sold our Shipyard Division operating assets and certain construction contracts (&#x201c;Shipyard Transaction&#x201d;). The Shipyard Transaction excluded the contracts and related obligations for our seventy-vehicle ferry and two forty-vehicle ferry projects (collectively, &#x201c;Ferry Projects&#x201d;) that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. The wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. See Note 2 for further discussion of our Ferry Projects, Note 7 for further discussion of the resolution of our MPSV Litigation and Note 9 for further discussion of the wind down of our Shipyard Division operations.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Basis of Presentation&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The accompanying Consolidated Financial Statements (&#x201c;Financial Statements&#x201d;) reflect all wholly owned subsidiaries. Intercompany balances and transactions have been eliminated in consolidation. The Financial Statements have been prepared in accordance with the rules and regulations of the U.S. Securities and Exchange Commission (the &#x201c;SEC&#x201d;) and accounting principles generally accepted in the U.S. (&#x201c;GAAP&#x201d;).&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating Cycle&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The duration of our contracts vary, but may extend beyond twelve months from the date of contract award. Consistent with industry practice, assets and liabilities have been classified as current under the operating cycle concept whereby all contract-related items are classified as current regardless of whether cash will be received or paid within a twelve-month period. Assets and liabilities classified as current, which may not be received or paid within the next twelve months, include contract retainage, contract assets and contract liabilities. Variations from normal contract terms may result in the classification of assets and liabilities as long-term.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Use of Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;General &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The preparation of our Financial Statements in conformity with GAAP requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenue and expenses and related disclosures of contingent assets and liabilities. We believe our most significant estimates and judgments are associated with:&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;revenue recognition for our long-term contracts, including application of the percentage-of-completion (&#x201c;POC&#x201d;) method, estimating costs to complete each contract and the recognition of incentives, unapproved change orders, claims (including amounts arising from disputes with customers) and liquidated damages;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;fair value and recoverability assessments that must be periodically performed with respect to long-lived tangible assets, goodwill and other intangible assets; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;determination of deferred income tax assets, liabilities and related valuation allowances;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;reserves for bad debts and credit losses; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;liabilities related to self-insurance programs; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;determination of the fair-value of our long-term debt; and&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;the impacts of volatile oil and gas prices and macroeconomic conditions on our business, estimates and judgments as discussed further below.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;If the underlying estimates and assumptions upon which our Financial Statements are based change in the future, actual amounts may differ materially from those included in the Financial Statements.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Oil and Gas Price Volatility and Macroeconomic Conditions &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; For over a decade, prices of oil and gas have experienced significant volatility, including depressed prices over extended periods, which negatively impacted our end markets and operating results. Beginning in 2020, the global coronavirus pandemic (&#x201c;COVID-19&#x201d;) added another layer of pressure and uncertainty on oil and gas prices (with oil prices reaching a twenty-year low and gas prices reaching a four-year low in 2020), which further negatively impacted certain of our end markets through the first quarter 2022. This volatility in oil and gas prices was compounded by Russia&#x2019;s invasion of Ukraine in February 2022 (and the related European energy crisis), and the U.S. and other countries actions in response, as well as continued inflationary pressures, resulting in elevated energy prices (with oil prices reaching an eight-year high and gas prices reaching a fourteen-year high in 2022), which positively impacted certain of our end markets. While oil and gas prices declined in 2023, prices have somewhat stabilized, but the duration of such stability is uncertain and difficult to predict, particularly in light of geopolitical turmoil and uncertainty.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In addition, global economic factors that are beyond our control, have and could continue to impact our operations, including, but are not limited to, labor constraints, supply chain disruptions, inflationary pressures, economic slowdowns and recessions, natural disasters, public health crises, and geopolitical conflicts.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The ultimate business and financial impacts of oil and gas price volatility and macroeconomic conditions on our business and results of operations continues to be uncertain, but the impacts have included, or may continue to include, among other things, reduced bidding activity; suspension or termination of backlog; deterioration of customer financial condition; and unanticipated project costs and schedule delays due to supply chain disruptions, labor and material price increases, lower labor productivity, increased employee and contractor absenteeism and turnover, craft labor hiring challenges, increased safety incidents, lack of performance by subcontractors and suppliers, and contract disputes. We continue to monitor the impacts of oil and gas price volatility and macroeconomic conditions on our operations, and our estimates in future periods will be revised for any events and changes in circumstances arising after the date of this Report.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income (Loss) Per Share&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Basic income (loss) per share is calculated by dividing net income or loss by the weighted average number of common shares outstanding for the period. Diluted income (loss) per share reflects the assumed conversion of dilutive securities in periods in which income is reported. See Note 8 for calculations of our basic and diluted income (loss) per share.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash Equivalents and Short-term Investments&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Cash Equivalents &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We consider investments with original maturities of three months or less when purchased to be cash equivalents. We hold substantially all of our cash deposits with Hancock Whitney Bank (&#x201c;Whitney Bank&#x201d;).&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Restricted Cash &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; At December 31, 2023 and 2022, we had &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, of restricted cash as security for letters of credit issued under our letter of credit facility (&#x201c;LC Facility&#x201d;) with Whitney Bank. Our restricted cash is held in an interest-bearing money market account with Whitney Bank. The classification of the restricted cash as current and noncurrent is determined by the contractual maturity dates of the letters of credit being secured, with letters of credit having &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;maturity dates of twelve months or less from the balance sheet date classified as current&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, and letters of credit having &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;maturity dates of longer than twelve months from the balance sheet date classified as noncurrent&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. See Note 4 for further discussion of our letters of credit and associated security requirements.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Short-term Investments &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; We consider investments with original maturities of more than three months but less than twelve months to be short-term investments. At December 31, 2023 and 2022, our short-term investments included U.S. Treasuries with original maturities of approximately four to six months. We intend to hold these investments until maturity and it is not more likely than not that we will be required to sell the investments prior to their maturity. The investments are stated at amortized costs, which approximates fair value due to their near-term maturities. All short-term investments are traded on active markets with quoted prices and represent Level 1 fair value measurements.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;   &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory is recorded at the lower of cost or net realizable value determined using the first-in-first-out basis. The cost of inventory includes acquisition costs, production or conversion costs, and other costs incurred to bring the inventory to a current location and condition. Net realizable value is our estimated selling price in the normal course of business, less reasonably predictable costs of completion, disposal and transportation. An allowance for excess or inactive inventory is recorded based on an analysis that considers current inventory levels, historical usage patterns, estimates of future sales and salvage value.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Allowance for Doubtful Accounts and Credit Losses&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As further discussed under &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;New Accounting Standards&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; below, we adopted the new accounting standard for measuring credit losses effective January 1, 2023. In the normal course of business, we extend credit to our customers on a short-term basis and contract receivables are generally not collateralized; however, we typically have the right to place liens on our projects in the event of nonpayment by our customers. We provide an allowance for credit losses and routinely review individual contract receivable balances and other financial assets for collectability and make provisions for probable uncollectible amounts as necessary. Among the factors considered in our review are the financial condition of our customer and its access to financing, underlying disputes with the customer, the age and value of the receivable balance, company-specific credit ratings, historical company-specific uncollectable amounts and economic conditions in general. See Note 2 for further discussion of our allowance for doubtful accounts and credit losses.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Awards under our stock-based compensation plans are calculated using a fair value-based measurement method. Depending on the terms of the award, we use the straight-line and graded vesting methods to recognize share-based compensation expense over the requisite service period of the award. We recognize the excess tax benefit or tax deficiency resulting from the difference between the deduction we receive for tax purposes and the stock-based compensation expense we recognize for financial reporting purposes created when common stock vests, as an income tax benefit or expense on our Consolidated Statement of Operations (&#x201c;Statement of Operations&#x201d;). Tax payments made on behalf of employees to taxing authorities in order to satisfy employee income tax withholding obligations from the vesting of shares under our stock-based compensation plans are classified as a financing activity on our Consolidated Statement of Cash Flows (&#x201c;Statement of Cash Flows&#x201d;). See Note 6 for further discussion of our stock-based and other compensation plans.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Assets Held for Sale&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Assets held for sale &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;are measured at the lower of their carrying amount or fair value less cost to sell. See Note 3 for further discussion of our assets held for sale.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Depreciation and Amortization Expense&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property, plant and equipment are depreciated on a straight-line basis over estimated useful lives ranging from &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_0afe6cb2-44da-43fa-ad5a-e2651f8bd43e;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;three&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;25 years&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. Ordinary maintenance and repairs, which do not extend the physical or economic lives of the plant or equipment, are charged to expense as incurred. Intangible assets are amortized on a straight-line basis over seven years and amortization expense is reflected within general and administrative expense on our Statement of Operations. See Note 3 for further discussion of our property, plant and equipment and intangible assets.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Long-Lived Assets&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Goodwill &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent any indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). Our Services Division represents our only reporting unit with goodwill. We perform our annual impairment assessment during the fourth quarter of each year based upon balances as of October 1. In evaluating goodwill for impairment, we have the option to first assess qualitative factors to determine whether it is more likely than not that the fair value of our reporting unit is greater than its carrying value. If we determine that it is more likely than not that the carrying value of the reporting unit is greater than its fair value, we perform a quantitative impairment test by calculating the fair value of the reporting unit and comparing it to the carrying value of the reporting unit, and we recognize an impairment charge to the extent its carrying value exceeds its fair value. To determine the fair value of our reporting unit and test for impairment, we utilize an income approach (discounted cash flow method) as we believe this is the most direct approach to incorporate the specific economic attributes and risk profile of our reporting unit into our valuation model. If, based on future assessments, our goodwill is deemed to be impaired, the impairment would result in a charge to our operating results in the period of impairment. See Note 3 for further discussion of our annual goodwill impairment assessment.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Other Long-Lived Assets &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Our property, plant and equipment, lease assets (included within other noncurrent assets) and finite-lived intangible assets are reviewed for impairment when events or changes in circumstances indicate that the carrying amount may not be recoverable. If a recoverability assessment is required, we compare the estimated future undiscounted cash flow associated with the asset or asset group to its carrying amount to determine if an impairment exists. An asset group constitutes the minimum level for which identifiable cash flows are principally independent of the cash flows of other assets or asset groups. An impairment loss is measured by comparing the fair value of the asset or asset group to its carrying amount and the excess of the carrying amount of the asset or asset group over its fair value is recorded as an impairment charge. Fair value is determined based on discounted cash flows, appraised values or third-party indications of value, as appropriate. We had no indicators of impairment during 2023. See Note 3 for discussion of our corporate office lease impairment during 2022.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Leases&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We record a right-of-use asset and an offsetting lease liability on our Consolidated Balance Sheet (&#x201c;Balance Sheet&#x201d;) equal to the present value of our lease payments for leases with an original term of longer than twelve months. We do not record an asset or liability for leases with an original term of twelve months or less and we do not separate lease and non-lease components for our leases. Our lease assets are reflected within other noncurrent assets, and the current and noncurrent portions of our lease liabilities are reflected within accrued expenses and other liabilities, and other noncurrent liabilities, respectively, on our Balance Sheet. For leases with escalations over the life of the lease, we recognize expense on a straight-line basis. See Note 3 for further discussion of our lease assets and liabilities.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair Value Measurements&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair value determinations for financial assets and liabilities are based on the particular facts and circumstances. Financial instruments are required to be categorized within a valuation hierarchy based upon the lowest level of input that is significant to the fair value measurement.  The three levels of the valuation hierarchy are as follows:&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 1 &#x2013; inputs are based upon quoted prices for identical instruments traded in active markets.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 2 &#x2013; inputs are based upon quoted prices for similar instruments in active markets and model-based valuation techniques for which all significant assumptions are observable in the market.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 3 &#x2013; inputs are based upon model-based valuation techniques for which significant assumptions are generally not observable in the market and typically reflect estimates and assumptions that we believe market participants would use in pricing the asset or liability. These include discounted cash flow models and similar valuation techniques.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The carrying amounts of our financial instruments, including cash and cash equivalents, short-term investments, accounts receivable and accounts payable approximate their fair values. Our fair value assessments for determining the impairments of inventory, assets held for sale, goodwill and long-lived assets, are non-recurring fair value measurements that fall within Level 3 of the fair value hierarchy. Our fair value assessments for long-term debt are recurring fair value measurements that fall within Level 2 of the fair value hierarchy, and are determined using various methods, including quoted prices for identical or similar securities in both active and inactive markets. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;See Note 3 for further discussion of our assets held for sale and Note 4 for further discussion of our long-term debt.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue Recognition&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;General&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; Our revenue is derived from customer contracts and agreements that are awarded on a competitively bid and negotiated basis using a range of contracting options, including fixed-price, unit-rate, time and materials (&#x201c;T&amp;amp;M&#x201d;) and cost-reimbursable, or a combination thereof. Our contracts primarily relate to the fabrication of steel structures and modules, and certain service arrangements. We recognize revenue from our contracts in accordance with Accounting Standards Update (&#x201c;ASU&#x201d;) 2014-09, Topic 606 &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Revenue from Contracts with Customers&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; (&#x201c;Topic 606&#x201d;).&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Topic 606 requires entities to recognize revenue in a way that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the entity expects to be entitled in exchange for those goods or services. Additionally, provisions of Topic 606 specify which goods and services are distinct and represent separate performance obligations (representing the unit of account in Topic 606) within a contract and which goods and services (which could include multiple contracts or agreements) should be aggregated. In general, a performance obligation is a contractual obligation to construct and/or transfer a distinct good or service to a customer. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Revenue for performance obligations satisfied over time are recognized as the work progresses. Revenue for performance obligations that do not meet the criteria for over time recognition are recognized at a point-in-time when a performance obligation is complete and a customer has obtained control of a promised asset.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Long-term Contracts Satisfied Over Time &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue for our long-term contracts is recognized using the POC method based on contract costs incurred to date compared to total estimated contract costs (an input method). Fixed-price contracts, or contracts with a more significant fixed-price component, generally provide us with greater control over project schedule and the timing of when work is performed and costs are incurred, and accordingly, when revenue is recognized. Unit-rate, T&amp;amp;M and cost-reimbursable contracts generally have more variability in the scope of work and provide our customers with greater influence over the timing of when we perform our work, and accordingly, such contracts often result in less predictability with respect to the timing of when revenue is recognized. Contract costs include direct costs, such as materials and labor, and indirect costs attributable to contract activity. Material costs that are significant to a contract and do not reflect an accurate measure of project completion are excluded from the determination of our contract progress. Revenue for such materials is only recognized to the extent of costs incurred. Revenue and gross profit or loss for contracts accounted for using the POC method can be significantly affected by changes in estimated cost to complete such contracts. Significant estimates impacting the cost to complete a contract include: forecast costs of engineering, materials, equipment and subcontracts; forecast costs of labor and labor productivity; schedule durations, including subcontractor and supplier progress; contract disputes, including claims; achievement of contractual performance requirements; and contingency, among others. Although our customers retain the right and ability to change, modify or discontinue further work at any stage of a contract, in the event our customers discontinue work, they are required to compensate us for the work performed to date. The cumulative impact of revisions in total cost estimates during the progress of work is reflected in the period in which these changes become known, including, to the extent required, the reversal of profit recognized in prior periods and the recognition of losses expected to be incurred on contracts. Due to the various estimates inherent in our contract accounting, actual results could differ from those estimates, which could result in material changes to our Financial Statements and related disclosures. See Note 2 for further discussion of projects with significant changes in estimated margins during 2023 and 2022.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Short-term Contracts and Contracts Satisfied at a Point In Time &#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; Revenue for our short-term contracts (which includes revenue associated with our master services arrangements) and contracts that do not satisfy the criteria for revenue recognition over time is recognized when the work is performed or when control of the asset is transferred, the related costs are incurred and collection is reasonably assured.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Variable Consideration&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; Revenue and gross profit or loss for contracts can be significantly affected by variable consideration, which can be in the form of unapproved change orders, claims (including amounts arising from disputes with customers), incentives and liquidated damages that may not be resolved until the later stages of the contract or after the contract has been completed. Variable consideration can also include revenue associated with work performed on a unit-rate, T&amp;amp;M or cost-reimbursable basis that is recognized using the POC method. We estimate variable consideration based on the amount we expect to be entitled and include estimated amounts in transaction price to the extent it is probable that a significant future reversal of cumulative revenue recognized will not occur or when we conclude that any significant uncertainty associated with the variable consideration is resolved. See Note 2 for further discussion of our unapproved change orders, claims, incentives and liquidated damages.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Additional Disclosures&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; Topic 606 also requires disclosures regarding the nature, amount, timing and uncertainty of revenues and cash flows from contracts with customers. See Note 2 for required disclosures under Topic 606.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Pre-Contract Costs&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Pre-contract costs are generally charged to cost of revenue as incurred, but in certain cases their recognition may be deferred if specific probability criteria are met. At December 31, 2023 and 2022, we had &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;no&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; deferred pre-contract costs.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other (Income) Expense, Net&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other (income) expense, net, generally represents recoveries or provisions for bad debts and credit losses, gains or losses associated with the sale or disposition of property and equipment, and income or expense associated with certain nonrecurring items. For 2023 and 2022, other (income) expense, net included gains of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida. See Note 2 for further discussion of the impacts of Hurricane Ida.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income Taxes&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income taxes have been provided for using the liability method. Deferred income taxes reflect the net tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes using enacted rates expected to be in effect during the year in which the differences are expected to reverse. Due to state income tax laws related to the apportionment of revenue for our projects, judgment is required to estimate the effective tax rate expected to apply to tax differences that are anticipated to reverse in the future.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A valuation allowance is provided to reserve for deferred tax assets (&#x201c;DTA(s)&#x201d;) if, based upon the available evidence, it is more likely than not that some or all of the DTAs will not be realized. The realization of our DTAs depends on our ability to generate sufficient taxable income of the appropriate character and in the appropriate jurisdictions. Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. See Note 5 for further discussion of our income taxes and DTAs.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;New Accounting Standards&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Financial instruments &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In the first quarter 2023, we adopted ASU 2016-13, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Financial Instruments - Credit Losses - Measurement of Credit Losses on Financial Instruments,&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; which changes the way we evaluate credit losses for most financial assets and certain other instruments. For trade and other receivables, short-term investments, loans and other instruments, we are required to use a new forward-looking &#x201c;expected loss&#x201d; model to evaluate impairment, which includes considering a broader range of information to estimate expected credit losses and may potentially result in earlier recognition of allowances for losses. The new accounting standard was adopted using the cumulative-effect transition method with any cumulative-effect adjustment being recorded to accumulated deficit on January 1, 2023. Upon adoption, we recorded a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million increase to beginning accumulated deficit, a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million decrease to contract receivables and retainage, net and contract assets, and a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million decrease to other noncurrent assets, on our Balance Sheet. Adoption of the new standard did not have a material effect on our results of operations or related disclosures.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Business Combinations &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In the first quarter 2023, we adopted ASU 2021-08, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Business Combinations - Accounting for Contract Assets and Contract Liabilities from Contracts with Customers,&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; which changes the way companies measure contract assets and contract liabilities from contracts with customers acquired in a business combination and creates an exception to the general recognition and measurement principle of ASC 805. Adoption of the new standard did not have a material effect on our financial position, results of operations or related disclosures.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Segment Reporting &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In the fourth quarter 2023, the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued ASU 2023-07 &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Segment Reporting - Improvements to Reportable Segment Disclosures&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;,&#x201d; which requires additional information about a public company&#x2019;s significant segment expenses and more timely and detailed segment information reporting throughout the fiscal period. The new standard will be effective for us in the fourth quarter 2024. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard is required to be applied using the retrospective transition method. We are assessing the effect that the new standard will have on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Income Taxes &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In the fourth quarter 2023, the FASB issued ASU 2023-09 &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Income Taxes - Improvements to Income Tax Disclosures&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;,&#x201d; which requires enhanced disclosures related to rate reconciliation and income taxes paid information. The new standard will be effective for us in the fourth quarter 2025. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard may be applied using either the prospective or retrospective transition method. We are assessing the effect of the new standard on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock>
    <gifi:NatureOfOperationsPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_c6de4433-12f0-4da6-9186-23778a5e9436">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Nature of Operations&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gulf Island Fabrication, Inc. (together with its subsidiaries, &#x201c;Gulf Island,&#x201d; &#x201c;the Company,&#x201d; &#x201c;we,&#x201d; &#x201c;us&#x201d; and &#x201c;our&#x201d;) is a leading fabricator of complex steel structures and modules and a provider of specialty services, including project management, hookup, commissioning, repair, maintenance, scaffolding, coatings, welding enclosures, civil construction and staffing services to the industrial and energy sectors. Our customers include U.S. and, to a lesser extent, international energy producers; refining, petrochemical, LNG, industrial and power operators; and EPC companies. We currently operate and manage our business through &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;three&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; operating divisions (&#x201c;Services&#x201d;, &#x201c;Fabrication&#x201d; and &#x201c;Shipyard&#x201d;) and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;one&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; non-operating division (&#x201c;Corporate&#x201d;), which represent our reportable segments. Our corporate headquarters is located in The Woodlands, Texas and our primary operating facilities are located in Houma, Louisiana (&#x201c;Houma Facilities&#x201d;). See Note 9 for further discussion of our reportable segments.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In the second quarter 2021, we sold our Shipyard Division operating assets and certain construction contracts (&#x201c;Shipyard Transaction&#x201d;). The Shipyard Transaction excluded the contracts and related obligations for our seventy-vehicle ferry and two forty-vehicle ferry projects (collectively, &#x201c;Ferry Projects&#x201d;) that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. The wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. See Note 2 for further discussion of our Ferry Projects, Note 7 for further discussion of the resolution of our MPSV Litigation and Note 9 for further discussion of the wind down of our Shipyard Division operations.&lt;/span&gt;&lt;/p&gt;</gifi:NatureOfOperationsPolicyTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="INF"
      id="F_561f441f-b0b1-4a3b-9428-ca06a9d6b4f8"
      unitRef="U_Segment">3</us-gaap:NumberOfOperatingSegments>
    <gifi:NumberOfCorporateNonOperatingSegments
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="INF"
      id="F_ef64a8db-6f17-4859-ab45-7bbd86c0bbce"
      unitRef="U_Segment">1</gifi:NumberOfCorporateNonOperatingSegments>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_e9e042f8-8cb6-413a-98d4-87c62c3d3a4f">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Basis of Presentation&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The accompanying Consolidated Financial Statements (&#x201c;Financial Statements&#x201d;) reflect all wholly owned subsidiaries. Intercompany balances and transactions have been eliminated in consolidation. The Financial Statements have been prepared in accordance with the rules and regulations of the U.S. Securities and Exchange Commission (the &#x201c;SEC&#x201d;) and accounting principles generally accepted in the U.S. (&#x201c;GAAP&#x201d;).&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <gifi:OperatingCyclePolicyPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_646107c8-4cb5-4f73-ae33-595f088e42e3">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Operating Cycle&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The duration of our contracts vary, but may extend beyond twelve months from the date of contract award. Consistent with industry practice, assets and liabilities have been classified as current under the operating cycle concept whereby all contract-related items are classified as current regardless of whether cash will be received or paid within a twelve-month period. Assets and liabilities classified as current, which may not be received or paid within the next twelve months, include contract retainage, contract assets and contract liabilities. Variations from normal contract terms may result in the classification of assets and liabilities as long-term.&lt;/span&gt;&lt;/p&gt;</gifi:OperatingCyclePolicyPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_41de456e-cfa3-4ba4-8fb0-b0e679a82af3">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Use of Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;General &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The preparation of our Financial Statements in conformity with GAAP requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenue and expenses and related disclosures of contingent assets and liabilities. We believe our most significant estimates and judgments are associated with:&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;revenue recognition for our long-term contracts, including application of the percentage-of-completion (&#x201c;POC&#x201d;) method, estimating costs to complete each contract and the recognition of incentives, unapproved change orders, claims (including amounts arising from disputes with customers) and liquidated damages;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;fair value and recoverability assessments that must be periodically performed with respect to long-lived tangible assets, goodwill and other intangible assets; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;determination of deferred income tax assets, liabilities and related valuation allowances;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;reserves for bad debts and credit losses; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;liabilities related to self-insurance programs; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;determination of the fair-value of our long-term debt; and&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:3pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;the impacts of volatile oil and gas prices and macroeconomic conditions on our business, estimates and judgments as discussed further below.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;If the underlying estimates and assumptions upon which our Financial Statements are based change in the future, actual amounts may differ materially from those included in the Financial Statements.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Oil and Gas Price Volatility and Macroeconomic Conditions &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; For over a decade, prices of oil and gas have experienced significant volatility, including depressed prices over extended periods, which negatively impacted our end markets and operating results. Beginning in 2020, the global coronavirus pandemic (&#x201c;COVID-19&#x201d;) added another layer of pressure and uncertainty on oil and gas prices (with oil prices reaching a twenty-year low and gas prices reaching a four-year low in 2020), which further negatively impacted certain of our end markets through the first quarter 2022. This volatility in oil and gas prices was compounded by Russia&#x2019;s invasion of Ukraine in February 2022 (and the related European energy crisis), and the U.S. and other countries actions in response, as well as continued inflationary pressures, resulting in elevated energy prices (with oil prices reaching an eight-year high and gas prices reaching a fourteen-year high in 2022), which positively impacted certain of our end markets. While oil and gas prices declined in 2023, prices have somewhat stabilized, but the duration of such stability is uncertain and difficult to predict, particularly in light of geopolitical turmoil and uncertainty.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In addition, global economic factors that are beyond our control, have and could continue to impact our operations, including, but are not limited to, labor constraints, supply chain disruptions, inflationary pressures, economic slowdowns and recessions, natural disasters, public health crises, and geopolitical conflicts.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The ultimate business and financial impacts of oil and gas price volatility and macroeconomic conditions on our business and results of operations continues to be uncertain, but the impacts have included, or may continue to include, among other things, reduced bidding activity; suspension or termination of backlog; deterioration of customer financial condition; and unanticipated project costs and schedule delays due to supply chain disruptions, labor and material price increases, lower labor productivity, increased employee and contractor absenteeism and turnover, craft labor hiring challenges, increased safety incidents, lack of performance by subcontractors and suppliers, and contract disputes. We continue to monitor the impacts of oil and gas price volatility and macroeconomic conditions on our operations, and our estimates in future periods will be revised for any events and changes in circumstances arising after the date of this Report.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;</us-gaap:UseOfEstimates>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_b8f4eb97-83aa-4964-9217-ecf25031bc55">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income (Loss) Per Share&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Basic income (loss) per share is calculated by dividing net income or loss by the weighted average number of common shares outstanding for the period. Diluted income (loss) per share reflects the assumed conversion of dilutive securities in periods in which income is reported. See Note 8 for calculations of our basic and diluted income (loss) per share.&lt;/span&gt;&lt;/p&gt;</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_650f7e2c-ee5b-4a3a-a491-fea29220b71f">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash Equivalents and Short-term Investments&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Cash Equivalents &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We consider investments with original maturities of three months or less when purchased to be cash equivalents. We hold substantially all of our cash deposits with Hancock Whitney Bank (&#x201c;Whitney Bank&#x201d;).&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Restricted Cash &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; At December 31, 2023 and 2022, we had &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, of restricted cash as security for letters of credit issued under our letter of credit facility (&#x201c;LC Facility&#x201d;) with Whitney Bank. Our restricted cash is held in an interest-bearing money market account with Whitney Bank. The classification of the restricted cash as current and noncurrent is determined by the contractual maturity dates of the letters of credit being secured, with letters of credit having &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;maturity dates of twelve months or less from the balance sheet date classified as current&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, and letters of credit having &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;maturity dates of longer than twelve months from the balance sheet date classified as noncurrent&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. See Note 4 for further discussion of our letters of credit and associated security requirements.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Short-term Investments &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; We consider investments with original maturities of more than three months but less than twelve months to be short-term investments. At December 31, 2023 and 2022, our short-term investments included U.S. Treasuries with original maturities of approximately four to six months. We intend to hold these investments until maturity and it is not more likely than not that we will be required to sell the investments prior to their maturity. The investments are stated at amortized costs, which approximates fair value due to their near-term maturities. All short-term investments are traded on active markets with quoted prices and represent Level 1 fair value measurements.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;   &lt;/span&gt;&lt;/p&gt;</us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock>
    <us-gaap:RestrictedCash
      contextRef="C_b86efaab-ab97-4ab9-9b25-9a1aa5b52a98"
      decimals="-5"
      id="F_be245dbe-6a16-4fc7-8f7c-dadadd7c4bee"
      unitRef="U_USD">1500000</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="C_ab576475-9920-402d-a6d4-86599a046a47"
      decimals="-5"
      id="F_774beeb9-2850-4f30-b094-d168cd206b66"
      unitRef="U_USD">1600000</us-gaap:RestrictedCash>
    <us-gaap:DebtInstrumentMaturityDateDescription
      contextRef="C_9b386988-e37c-43b3-a8ff-0a6cee812527"
      id="F_38f4989a-584a-4ae0-af32-c230d2e26a1d">maturity dates of twelve months or less from the balance sheet date classified as current</us-gaap:DebtInstrumentMaturityDateDescription>
    <us-gaap:DebtInstrumentMaturityDateDescription
      contextRef="C_49d991ee-97c7-40ff-9bc7-8fb7d4273387"
      id="F_22c52334-d253-4599-a1be-643e12db21ae">maturity dates of longer than twelve months from the balance sheet date classified as noncurrent</us-gaap:DebtInstrumentMaturityDateDescription>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_1b6083c6-be0e-49fe-b6fe-3950379139d5">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Inventory is recorded at the lower of cost or net realizable value determined using the first-in-first-out basis. The cost of inventory includes acquisition costs, production or conversion costs, and other costs incurred to bring the inventory to a current location and condition. Net realizable value is our estimated selling price in the normal course of business, less reasonably predictable costs of completion, disposal and transportation. An allowance for excess or inactive inventory is recorded based on an analysis that considers current inventory levels, historical usage patterns, estimates of future sales and salvage value.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_ab5667f4-4211-425f-a9d5-0dfcc6b4e658">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Allowance for Doubtful Accounts and Credit Losses&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As further discussed under &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;New Accounting Standards&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; below, we adopted the new accounting standard for measuring credit losses effective January 1, 2023. In the normal course of business, we extend credit to our customers on a short-term basis and contract receivables are generally not collateralized; however, we typically have the right to place liens on our projects in the event of nonpayment by our customers. We provide an allowance for credit losses and routinely review individual contract receivable balances and other financial assets for collectability and make provisions for probable uncollectible amounts as necessary. Among the factors considered in our review are the financial condition of our customer and its access to financing, underlying disputes with the customer, the age and value of the receivable balance, company-specific credit ratings, historical company-specific uncollectable amounts and economic conditions in general. See Note 2 for further discussion of our allowance for doubtful accounts and credit losses.&lt;/span&gt;&lt;/p&gt;</us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_fc35f53c-ba51-4379-848a-c5ea04a91b33">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Awards under our stock-based compensation plans are calculated using a fair value-based measurement method. Depending on the terms of the award, we use the straight-line and graded vesting methods to recognize share-based compensation expense over the requisite service period of the award. We recognize the excess tax benefit or tax deficiency resulting from the difference between the deduction we receive for tax purposes and the stock-based compensation expense we recognize for financial reporting purposes created when common stock vests, as an income tax benefit or expense on our Consolidated Statement of Operations (&#x201c;Statement of Operations&#x201d;). Tax payments made on behalf of employees to taxing authorities in order to satisfy employee income tax withholding obligations from the vesting of shares under our stock-based compensation plans are classified as a financing activity on our Consolidated Statement of Cash Flows (&#x201c;Statement of Cash Flows&#x201d;). See Note 6 for further discussion of our stock-based and other compensation plans.&lt;/span&gt;&lt;/p&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <gifi:AssetsHeldForSalePolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_9de53e08-498d-4bb6-bb57-58d8727bfa16">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Assets Held for Sale&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Assets held for sale &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;are measured at the lower of their carrying amount or fair value less cost to sell. See Note 3 for further discussion of our assets held for sale.&lt;/span&gt;&lt;/p&gt;</gifi:AssetsHeldForSalePolicyTextBlock>
    <us-gaap:DepreciationDepletionAndAmortizationPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_87b7ccb2-5b2b-4d33-ad30-d306d90f3bf6">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Depreciation and Amortization Expense&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property, plant and equipment are depreciated on a straight-line basis over estimated useful lives ranging from &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_0afe6cb2-44da-43fa-ad5a-e2651f8bd43e;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;three&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;25 years&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. Ordinary maintenance and repairs, which do not extend the physical or economic lives of the plant or equipment, are charged to expense as incurred. Intangible assets are amortized on a straight-line basis over seven years and amortization expense is reflected within general and administrative expense on our Statement of Operations. See Note 3 for further discussion of our property, plant and equipment and intangible assets.&lt;/span&gt;&lt;/p&gt;</us-gaap:DepreciationDepletionAndAmortizationPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_18924d07-f6c4-4e2b-915b-55f0f0b7d733"
      id="F_080bf6c2-ce7b-487e-ab10-450499fe2c4d">P25Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_258612b0-dd94-4e14-9a5c-b10fb5487f74">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Long-Lived Assets&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Goodwill &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent any indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). Our Services Division represents our only reporting unit with goodwill. We perform our annual impairment assessment during the fourth quarter of each year based upon balances as of October 1. In evaluating goodwill for impairment, we have the option to first assess qualitative factors to determine whether it is more likely than not that the fair value of our reporting unit is greater than its carrying value. If we determine that it is more likely than not that the carrying value of the reporting unit is greater than its fair value, we perform a quantitative impairment test by calculating the fair value of the reporting unit and comparing it to the carrying value of the reporting unit, and we recognize an impairment charge to the extent its carrying value exceeds its fair value. To determine the fair value of our reporting unit and test for impairment, we utilize an income approach (discounted cash flow method) as we believe this is the most direct approach to incorporate the specific economic attributes and risk profile of our reporting unit into our valuation model. If, based on future assessments, our goodwill is deemed to be impaired, the impairment would result in a charge to our operating results in the period of impairment. See Note 3 for further discussion of our annual goodwill impairment assessment.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Other Long-Lived Assets &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Our property, plant and equipment, lease assets (included within other noncurrent assets) and finite-lived intangible assets are reviewed for impairment when events or changes in circumstances indicate that the carrying amount may not be recoverable. If a recoverability assessment is required, we compare the estimated future undiscounted cash flow associated with the asset or asset group to its carrying amount to determine if an impairment exists. An asset group constitutes the minimum level for which identifiable cash flows are principally independent of the cash flows of other assets or asset groups. An impairment loss is measured by comparing the fair value of the asset or asset group to its carrying amount and the excess of the carrying amount of the asset or asset group over its fair value is recorded as an impairment charge. Fair value is determined based on discounted cash flows, appraised values or third-party indications of value, as appropriate. We had no indicators of impairment during 2023. See Note 3 for discussion of our corporate office lease impairment during 2022.&lt;/span&gt;&lt;/p&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_3685438a-cf4c-4c21-8dcb-785135e3b5c5">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Leases&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We record a right-of-use asset and an offsetting lease liability on our Consolidated Balance Sheet (&#x201c;Balance Sheet&#x201d;) equal to the present value of our lease payments for leases with an original term of longer than twelve months. We do not record an asset or liability for leases with an original term of twelve months or less and we do not separate lease and non-lease components for our leases. Our lease assets are reflected within other noncurrent assets, and the current and noncurrent portions of our lease liabilities are reflected within accrued expenses and other liabilities, and other noncurrent liabilities, respectively, on our Balance Sheet. For leases with escalations over the life of the lease, we recognize expense on a straight-line basis. See Note 3 for further discussion of our lease assets and liabilities.&lt;/span&gt;&lt;/p&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:FairValueMeasurementPolicyPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_25e853b1-8115-45ec-b6c2-d2ad866d8ab1">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair Value Measurements&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Fair value determinations for financial assets and liabilities are based on the particular facts and circumstances. Financial instruments are required to be categorized within a valuation hierarchy based upon the lowest level of input that is significant to the fair value measurement.  The three levels of the valuation hierarchy are as follows:&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 1 &#x2013; inputs are based upon quoted prices for identical instruments traded in active markets.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 2 &#x2013; inputs are based upon quoted prices for similar instruments in active markets and model-based valuation techniques for which all significant assumptions are observable in the market.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Level 3 &#x2013; inputs are based upon model-based valuation techniques for which significant assumptions are generally not observable in the market and typically reflect estimates and assumptions that we believe market participants would use in pricing the asset or liability. These include discounted cash flow models and similar valuation techniques.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The carrying amounts of our financial instruments, including cash and cash equivalents, short-term investments, accounts receivable and accounts payable approximate their fair values. Our fair value assessments for determining the impairments of inventory, assets held for sale, goodwill and long-lived assets, are non-recurring fair value measurements that fall within Level 3 of the fair value hierarchy. Our fair value assessments for long-term debt are recurring fair value measurements that fall within Level 2 of the fair value hierarchy, and are determined using various methods, including quoted prices for identical or similar securities in both active and inactive markets. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;See Note 3 for further discussion of our assets held for sale and Note 4 for further discussion of our long-term debt.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:FairValueMeasurementPolicyPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_a4da7486-e63b-4b31-9bd7-efaca951b881">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue Recognition&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;General&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; Our revenue is derived from customer contracts and agreements that are awarded on a competitively bid and negotiated basis using a range of contracting options, including fixed-price, unit-rate, time and materials (&#x201c;T&amp;amp;M&#x201d;) and cost-reimbursable, or a combination thereof. Our contracts primarily relate to the fabrication of steel structures and modules, and certain service arrangements. We recognize revenue from our contracts in accordance with Accounting Standards Update (&#x201c;ASU&#x201d;) 2014-09, Topic 606 &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Revenue from Contracts with Customers&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; (&#x201c;Topic 606&#x201d;).&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Topic 606 requires entities to recognize revenue in a way that depicts the transfer of promised goods or services to customers in an amount that reflects the consideration to which the entity expects to be entitled in exchange for those goods or services. Additionally, provisions of Topic 606 specify which goods and services are distinct and represent separate performance obligations (representing the unit of account in Topic 606) within a contract and which goods and services (which could include multiple contracts or agreements) should be aggregated. In general, a performance obligation is a contractual obligation to construct and/or transfer a distinct good or service to a customer. The transaction price of a contract is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Revenue for performance obligations satisfied over time are recognized as the work progresses. Revenue for performance obligations that do not meet the criteria for over time recognition are recognized at a point-in-time when a performance obligation is complete and a customer has obtained control of a promised asset.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Long-term Contracts Satisfied Over Time &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue for our long-term contracts is recognized using the POC method based on contract costs incurred to date compared to total estimated contract costs (an input method). Fixed-price contracts, or contracts with a more significant fixed-price component, generally provide us with greater control over project schedule and the timing of when work is performed and costs are incurred, and accordingly, when revenue is recognized. Unit-rate, T&amp;amp;M and cost-reimbursable contracts generally have more variability in the scope of work and provide our customers with greater influence over the timing of when we perform our work, and accordingly, such contracts often result in less predictability with respect to the timing of when revenue is recognized. Contract costs include direct costs, such as materials and labor, and indirect costs attributable to contract activity. Material costs that are significant to a contract and do not reflect an accurate measure of project completion are excluded from the determination of our contract progress. Revenue for such materials is only recognized to the extent of costs incurred. Revenue and gross profit or loss for contracts accounted for using the POC method can be significantly affected by changes in estimated cost to complete such contracts. Significant estimates impacting the cost to complete a contract include: forecast costs of engineering, materials, equipment and subcontracts; forecast costs of labor and labor productivity; schedule durations, including subcontractor and supplier progress; contract disputes, including claims; achievement of contractual performance requirements; and contingency, among others. Although our customers retain the right and ability to change, modify or discontinue further work at any stage of a contract, in the event our customers discontinue work, they are required to compensate us for the work performed to date. The cumulative impact of revisions in total cost estimates during the progress of work is reflected in the period in which these changes become known, including, to the extent required, the reversal of profit recognized in prior periods and the recognition of losses expected to be incurred on contracts. Due to the various estimates inherent in our contract accounting, actual results could differ from those estimates, which could result in material changes to our Financial Statements and related disclosures. See Note 2 for further discussion of projects with significant changes in estimated margins during 2023 and 2022.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Short-term Contracts and Contracts Satisfied at a Point In Time &#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; Revenue for our short-term contracts (which includes revenue associated with our master services arrangements) and contracts that do not satisfy the criteria for revenue recognition over time is recognized when the work is performed or when control of the asset is transferred, the related costs are incurred and collection is reasonably assured.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Variable Consideration&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; Revenue and gross profit or loss for contracts can be significantly affected by variable consideration, which can be in the form of unapproved change orders, claims (including amounts arising from disputes with customers), incentives and liquidated damages that may not be resolved until the later stages of the contract or after the contract has been completed. Variable consideration can also include revenue associated with work performed on a unit-rate, T&amp;amp;M or cost-reimbursable basis that is recognized using the POC method. We estimate variable consideration based on the amount we expect to be entitled and include estimated amounts in transaction price to the extent it is probable that a significant future reversal of cumulative revenue recognized will not occur or when we conclude that any significant uncertainty associated with the variable consideration is resolved. See Note 2 for further discussion of our unapproved change orders, claims, incentives and liquidated damages.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Additional Disclosures&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; Topic 606 also requires disclosures regarding the nature, amount, timing and uncertainty of revenues and cash flows from contracts with customers. See Note 2 for required disclosures under Topic 606.&lt;/span&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <gifi:PrecontractCostPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_4aa980eb-2e11-421b-9fa7-3ebebc9cb997">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Pre-Contract Costs&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Pre-contract costs are generally charged to cost of revenue as incurred, but in certain cases their recognition may be deferred if specific probability criteria are met. At December 31, 2023 and 2022, we had &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;no&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; deferred pre-contract costs.&lt;/span&gt;&lt;/p&gt;</gifi:PrecontractCostPolicyTextBlock>
    <us-gaap:AmountOfDeferredCostsRelatedToLongTermContracts
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="INF"
      id="F_90d9430c-4f47-4b77-9864-fef89790c47f"
      unitRef="U_USD">0</us-gaap:AmountOfDeferredCostsRelatedToLongTermContracts>
    <us-gaap:AmountOfDeferredCostsRelatedToLongTermContracts
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="INF"
      id="F_f4c14772-56c5-4b60-8078-3d961b1d7821"
      unitRef="U_USD">0</us-gaap:AmountOfDeferredCostsRelatedToLongTermContracts>
    <gifi:OtherIncomeExpenseNetPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_81c38f89-2525-460f-bfaf-4a392f7aff52">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other (Income) Expense, Net&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other (income) expense, net, generally represents recoveries or provisions for bad debts and credit losses, gains or losses associated with the sale or disposition of property and equipment, and income or expense associated with certain nonrecurring items. For 2023 and 2022, other (income) expense, net included gains of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida. See Note 2 for further discussion of the impacts of Hurricane Ida.&lt;/span&gt;&lt;/p&gt;</gifi:OtherIncomeExpenseNetPolicyTextBlock>
    <us-gaap:InsuranceRecoveries
      contextRef="C_45441188-7fd4-40fd-889e-58292a77a98a"
      decimals="-5"
      id="F_558aa5b7-5b11-4d72-b3cf-10d07ad24e8c"
      unitRef="U_USD">1500000</us-gaap:InsuranceRecoveries>
    <us-gaap:InsuranceRecoveries
      contextRef="C_c216a8b8-8f77-405a-8676-71144cba1804"
      decimals="-5"
      id="F_e76ff9b8-d9ca-4a98-b165-37bbdff27743"
      unitRef="U_USD">7300000</us-gaap:InsuranceRecoveries>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_fefb169d-f450-4fbb-a5e5-6d66db3f4b9a">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income Taxes&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income taxes have been provided for using the liability method. Deferred income taxes reflect the net tax effects of temporary differences between the carrying amounts of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes using enacted rates expected to be in effect during the year in which the differences are expected to reverse. Due to state income tax laws related to the apportionment of revenue for our projects, judgment is required to estimate the effective tax rate expected to apply to tax differences that are anticipated to reverse in the future.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A valuation allowance is provided to reserve for deferred tax assets (&#x201c;DTA(s)&#x201d;) if, based upon the available evidence, it is more likely than not that some or all of the DTAs will not be realized. The realization of our DTAs depends on our ability to generate sufficient taxable income of the appropriate character and in the appropriate jurisdictions. Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. See Note 5 for further discussion of our income taxes and DTAs.&lt;/span&gt;&lt;/p&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_521f906d-49a1-46c2-86c5-99f087a840b8">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;New Accounting Standards&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Financial instruments &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In the first quarter 2023, we adopted ASU 2016-13, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Financial Instruments - Credit Losses - Measurement of Credit Losses on Financial Instruments,&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; which changes the way we evaluate credit losses for most financial assets and certain other instruments. For trade and other receivables, short-term investments, loans and other instruments, we are required to use a new forward-looking &#x201c;expected loss&#x201d; model to evaluate impairment, which includes considering a broader range of information to estimate expected credit losses and may potentially result in earlier recognition of allowances for losses. The new accounting standard was adopted using the cumulative-effect transition method with any cumulative-effect adjustment being recorded to accumulated deficit on January 1, 2023. Upon adoption, we recorded a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million increase to beginning accumulated deficit, a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million decrease to contract receivables and retainage, net and contract assets, and a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million decrease to other noncurrent assets, on our Balance Sheet. Adoption of the new standard did not have a material effect on our results of operations or related disclosures.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Business Combinations &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In the first quarter 2023, we adopted ASU 2021-08, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Business Combinations - Accounting for Contract Assets and Contract Liabilities from Contracts with Customers,&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; which changes the way companies measure contract assets and contract liabilities from contracts with customers acquired in a business combination and creates an exception to the general recognition and measurement principle of ASC 805. Adoption of the new standard did not have a material effect on our financial position, results of operations or related disclosures.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Segment Reporting &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In the fourth quarter 2023, the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued ASU 2023-07 &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Segment Reporting - Improvements to Reportable Segment Disclosures&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;,&#x201d; which requires additional information about a public company&#x2019;s significant segment expenses and more timely and detailed segment information reporting throughout the fiscal period. The new standard will be effective for us in the fourth quarter 2024. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard is required to be applied using the retrospective transition method. We are assessing the effect that the new standard will have on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Income Taxes &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In the fourth quarter 2023, the FASB issued ASU 2023-09 &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Income Taxes - Improvements to Income Tax Disclosures&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;,&#x201d; which requires enhanced disclosures related to rate reconciliation and income taxes paid information. The new standard will be effective for us in the fourth quarter 2025. Early adoption of the new standard is permitted; however, we have not elected to early adopt the standard. The new standard may be applied using either the prospective or retrospective transition method. We are assessing the effect of the new standard on our financial statement disclosures; however, adoption will not impact our Balance Sheet or Statement of Operations.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <gifi:RetainedEarningsIncreaseDecreaseInAccumulatedDeficit
      contextRef="C_381fcc55-57f3-4b03-b7a7-9eb8efea19d7"
      decimals="-5"
      id="F_43020362-b443-4c67-8697-4399d45a7a7e"
      unitRef="U_USD">600000</gifi:RetainedEarningsIncreaseDecreaseInAccumulatedDeficit>
    <gifi:DecreaseToContractReceivablesAndRetainageNetAndContractAssets
      contextRef="C_381fcc55-57f3-4b03-b7a7-9eb8efea19d7"
      decimals="-5"
      id="F_ffca34eb-a237-42a7-93ee-478be2407cc9"
      unitRef="U_USD">400000</gifi:DecreaseToContractReceivablesAndRetainageNetAndContractAssets>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentAssets
      contextRef="C_381fcc55-57f3-4b03-b7a7-9eb8efea19d7"
      decimals="-5"
      id="F_02735050-6a71-4823-bf1d-a15f13342c73"
      unitRef="U_USD">200000</us-gaap:IncreaseDecreaseInOtherNoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_552e7a9b-d336-4084-8581-686f99ab5119">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2. REVENUE, CONTRACT ASSETS AND LIABILITIES AND OTHER CONTRACT MATTERS&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As discussed in Note 1, we recognize revenue for our contracts in accordance with Topic 606. Summarized below are required disclosures under Topic 606 and other relevant guidance.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Disaggregation of Revenue&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following tables summarize revenue for each of our operating segments, disaggregated by contract type and duration, for &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023 and 2022 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:36.787%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Year ended December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Eliminations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Fixed-price and unit-rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;51,015&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;22,183&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;T&amp;amp;M and cost-reimbursable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;87,914&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;38,031&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;125,945&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,016&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,077&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,939&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;93,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;89,046&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,110&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;151,067&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Long-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;82,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;53,703&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Short-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;91,930&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6,511&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,077&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;97,364&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;93,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;89,046&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,110&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;151,067&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:36.787%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Year ended December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Eliminations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Fixed-price and unit-rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,035&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;36,127&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;48,826&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;T&amp;amp;M and cost-reimbursable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;79,426&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;9,526&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;88,952&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,561&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,646&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;665&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,542&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;87,022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;48,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;142,320&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Long-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,035&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;43,037&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;55,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Short-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;81,987&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,262&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;86,577&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;87,022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;48,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;142,320&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Future Performance Obligations&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table summarizes remaining performance obligations for each of our operating segments, disaggregated by contract type, at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2023 (in thousands):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:36.505%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.975%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.975%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.975%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.975%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Fixed-price and unit-rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;502&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;11,446&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;709&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12,657&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;T&amp;amp;M and cost-reimbursable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;293&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;293&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;502&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;11,739&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;709&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12,950&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;We expect all of our performance obligations at December 31, 2023, to be recognized as revenue during 2024. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;C&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;ertain factors and circumstances could result in changes in the timing of recognition of our performance obligations as revenue and the amounts ultimately recognized.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contracts Assets and Liabilities&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The timing of customer invoicing and recognition of revenue using the POC method may occur at different times. Customer invoicing is generally dependent upon contractual billing terms, which could provide for customer payments in advance of performing the work, milestone billings based on the completion of certain phases of the work, or billings when services are provided. Revenue recognized in excess of amounts billed is reflected as contract assets on our Balance Sheet, or to the extent we have an unconditional right to the consideration, is reflected as contract receivables on our Balance Sheet. Amounts billed in excess of revenue recognized, and accrued contract losses, are reflected as contract liabilities on our Balance Sheet. &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Information with respect to contracts that were incomplete at December 31, 2023 and 2022, is as follows (in thousands):&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:59.272%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Costs incurred to date&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;117,274&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;112,693&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Estimated losses incurred to date&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12,735&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12,610&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Sub-total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;104,539&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;100,083&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Billings to date&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;107,270&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;103,440&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,731&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,357&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The above amounts are included within the following captions on our Balance Sheet at December 31, 2023 and 2022 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:4.533%;text-indent:-3.17%;padding-left:2.933%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:59.272%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Contract assets&lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;&#160;(1), (2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,739&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,839&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Contract liabilities &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(3), (4), (5)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,470&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8,196&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,731&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,357&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;The decrease in contract assets from December 31, 2022 to December 31, 2023, was primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contract assets at December 31, 2023 and 2022, excluded $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, associated with revenue recognized in excess of amounts billed for which we have an unconditional right to the consideration. Such amounts are reflected within contract receivables. The increase from December 31, 2022 to December 31, 2023, was primarily due to a customer for our Services Division.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(3)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;The decrease in contract liabilities from December 31, 2022 to December 31, 2023, was primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(4)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue recognized during 2023 and 2022, related to amounts included in our contract liabilities balance at December 31, 2022 and 2021, was $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(5)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, primarily related to projects for our Shipyard Division. See &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Changes in Project Estimates&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; below for further discussion of our accrued contract losses. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Significant Customers&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table summarizes revenue for customers that accounted for 10% or more of our consolidated revenue for 2023 and 2022 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:47.57%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:22.256%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:22.256%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer A&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;70,497&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;54,257&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer B&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;26,956&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;*&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer C &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;16,498&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;14,635&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer D &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;15,481&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;*&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:4.133%;text-indent:-3.602%;padding-left:3.333%;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;(*)	The customer revenue was less than &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% of consolidated revenue for the year.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;For 2023, these customers accounted for &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% or more of our consolidated revenue due to lower revenue for the period associated with a charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for our Shipyard Division, resulting from the resolution of our MPSV Litigation. See &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Changes in Project Estimates&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; below and Note 7 for further discussion of the charge and resolution of our MPSV Litigation.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Allowance for Doubtful Accounts and Credit Losses&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Our provision for bad debts and credit losses is included in other (income) expense, net on our Statement of Operations. For 2023, we recognized income of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; m&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;illion associated with revisions to our allowance for doubtful accounts and credit losses, and for 2022, changes were not significant. Our allowance for doubtful accounts and credit losses at December 31, 2023 was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, and it was not significant at December 31, 2022. We recorded a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million increase to beginning accumulated deficit as of January 1, 2023, in connection with our adoption of ASU 2016-13. We had no significant write-offs or recoveries of previously recorded bad debts during 2023 or 2022. See &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;New Accounting Standards&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; in Note 1 for further discussion of our adoption of ASU 2016-13.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Variable Consideration&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;For 2023 and 2022, we had no material amounts in revenue related to unapproved change orders, claims or incentives, other than amounts related to the resolution of our MPSV Litigation discussed further below. However, at December 31, 2023 and 2022, certain active projects within our Shipyard Division reflected a reduction to our estimated contract price for liquidated damages of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Changes in Project Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We determine the impact of changes in estimated margins on projects for a given period by calculating the amount of revenue recognized in the period that would have been recognized in a prior period had such estimated margins been forecasted in the prior period. The total impact of changes in estimated margins for a project as disclosed on a quarterly basis may be different from the applicable year-to-date impact due to the application of the POC method and the changing progress of the project at each period end. Such impacts may also be different when a project is commenced and completed within the applicable year-to-date period but spans multiple quarters.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Changes in Estimates for 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; During 2023, we recorded a charge of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for our Shipyard Division, reflected as a reduction to revenue, resulting from the resolution of our MPSV Litigation. See Note 7 for further discussion of the charge and resolution of our MPSV Litigation. In addition, during&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; 2023,&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; significant changes in estimated margins on projects negatively impacted operating results for our Shipyard Division by $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million. The changes in estimates were associated with the following:&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Seventy-Vehicle Ferry Project&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; During 2023, we completed, delivered and received final customer acceptance of our seventy-vehicle ferry. D&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;uring 2023, our operating results were negatively impacted by $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million from changes in estimates on the project, associated primarily with increased materials and subcontracted services costs, duration related costs due to extensions of schedule and net reductions to contract price. The cost impacts were primarily due to &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;delays in the receipt of certain equipment that required replacement and subcontractor delays. The contract price impacts were primarily due to a price reduction resulting from the required replacement of the vessel&#x2019;s propeller blades (discussed further below), offset partially by price increases due to favorable resolution of customer change orders and the customer&#x2019;s agreement to forego a portion of previously forecasted liquidated damages.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As discussed in our previous quarterly filings, in connection with the delivery and commissioning of the vessel in the second quarter 2023, corrosion on the propeller blades was identified and the customer determined that replacement of the propeller blades will be required. The customer has agreed to directly procure the new propeller blades and take responsibility for future installation of the blades once received. Further, the customer agreed to bear a portion of the cost of the new propeller blades, with the remainder borne by us through the aforementioned contract price reduction.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;At December 31, 2023, the project was in a loss position and the warranty period for the vessel ends in the third quarter 2024. The project would experience further losses if we incur unanticipated warranty costs on the vessel.&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Forty-Vehicle Ferry Projects&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; During 2022, we substantially completed and delivered the first of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;two&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; forty-vehicle ferries, and during 2023, we received final customer acceptance of the ferry. Further, during 2023, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;we substantially &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;completed and delivered our second forty-vehicle ferry, and we anticipate final customer acceptance of the ferry in March 2024. During 2023, our operating results were negatively impacted by $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million from changes in estimates on the projects, associated primarily with (i) warranty costs on the first vessel, and (ii) increased materials and subcontracted services costs and duration related costs due to extensions of schedule, including forecast liquidated damages, on the second vessel. The impacts for the second vessel were primarily due to delays in the receipt of certain equipment that required replacement and subcontractor delays. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As discussed in our 2022 Financial Statements and subsequent quarterly filings, as a result of design deficiencies, we experienced rework, construction and commissioning challenges on the &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;two&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; ferries, resulting in forecast cost increases and liquidated damages, and the previous need to fabricate a new hull for the second vessel. Accordingly, during 2021, we submitted claims to our customer, and subsequently filed a lawsuit, to extend our project schedules and recover the cost impacts of the design deficiencies. The customer denied all liability. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Our forecasts at December 31, 2023 do not reflect potential future benefits, if any, from the favorable resolution of the lawsuit and we can provide no assurance that we will be successful recovering previously incurred costs.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:7.467%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;At December 31, 2023, the projects were in a loss position and the warranty period for the first vessel ends in the second quarter 2024 and the warranty period for the second vessel is anticipated to end in the first quarter 2025. The projects would experience further losses if we incur unanticipated warranty costs on the vessels.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Changes in Estimates for 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; During 2022,&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; significant changes in estimated margins on projects negatively impacted operating results for our Shipyard Division by $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million. The changes in estimates were associated with the following:&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:6pt;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Seventy-Vehicle Ferry Project&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; During 2022, our operating results were negatively impacted by $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million from changes in estimates on our seventy-vehicle ferry project, associated primarily with increased materials and subcontracted services costs and duration related costs due to extensions of schedule, including forecast liquidated damages. The impacts were primarily due to equipment issues identified during testing, subcontractor delays and the U.S. Coast Guard&#x2019;s determination that the vessel&#x2019;s wood consoles, contractually specified by the customer, were required to be replaced or modified with metal consoles.  &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Forty-Vehicle Ferry Projects&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; During 2022, our operating results were negatively impacted by $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million from changes in estimates on our second forty-vehicle ferry project, associated primarily with increased subcontracted services and craft labor costs and duration related costs due to extensions of schedule, including forecast liquidated damages. The impacts were primarily due to structural design deficiencies for the vessel (discussed further above), which resulted in deflection issues within the plating of the vessel. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;   &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other Operating and Project Matters&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;During 2021, our operations were impacted by Hurricane Ida, which made landfall near Houma, Louisiana as a high-end Category 4 hurricane, causing debris and damage to our buildings and equipment at our Houma Facilities. Our insurance coverages in effect at the time of the storm generally specified coverage amounts for each of our buildings (including contents) and major equipment.  &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Fabrication Division Impacts &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; During 2023 and 2022, we received insurance payments of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;13.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, from our insurance carriers associated with interruptions to our operations and damage to buildings and equipment&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; Further, in the fourth quarter 2023, we finalized all claims associated with our insurance coverages, and at December 31, 2023, we had total insurance receivables on our Balance Sheet of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, all of which was collected in January 2024. The classification of insurance proceeds within our Statement of Cash Flows is based on our use or intended use of the proceeds. Proceeds used or intended to be used for repairs that are not deemed to be capital in nature, and proceeds associated with interruptions to our operations, are reflected within operating activities. Proceeds used or intended to be used for repairs that are deemed capital in nature, or proceeds in excess of repair costs, are reflected within investing activities.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The timing of payments from our insurance carriers often differed from when we incurred the applicable repair and cleanup costs, and accordingly, we accounted for such differences in timing as follows:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;To the extent we incurred repair costs in excess of insurance proceeds received to date, we recorded an insurance receivable when we believed such amounts were probable of recovery under our insurance policies.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;To the extent proceeds received exceeded repair costs incurred to date, we recorded an insurance gain as we did not have an obligation to perform further repair activities. Charges were recorded in subsequent periods to the extent such proceeds received were used for repair activities that were not deemed to be capital in nature. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Insurance deductibles, clean-up costs and uninsured losses were expensed. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Based on the above, during 2023 and 2022, we recorded gains of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million (including $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million related to our business interruption coverage) and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million (including $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million related to our business interruption coverage), respectively, related to the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida. The gains are included in other (income) expense, net on our Statement of Operations and are reflected within our Fabrication Division.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;    &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Shipyard Division Impacts &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; In addition to damage to our Houma Facilities, the storm resulted in damage to one of our forty-vehicle ferry projects&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, the multi-purpose supply vessels (&#x201c;MPSV(s)&#x201d;) and associated equipment that were previously in our possession and subject to our MPSV Litigation, and certain bulkheads where the vessels were moored.  During 2023 and 2022, we recorded charges of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, related to actual costs incurred. The charges are included in other (income) expense, net on our Statement of Operations and are reflected within our Shipyard Division. See Note 7 for further discussion of the resolution of our MPSV Litigation.&lt;/span&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_446c28c8-57b4-4789-9a2b-3263af032352">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following tables summarize revenue for each of our operating segments, disaggregated by contract type and duration, for &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023 and 2022 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:36.787%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Year ended December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Eliminations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Fixed-price and unit-rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;51,015&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;22,183&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;T&amp;amp;M and cost-reimbursable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;87,914&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;38,031&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;125,945&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,016&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,077&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,939&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;93,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;89,046&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,110&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;151,067&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Long-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;82,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;53,703&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Short-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;91,930&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6,511&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,077&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;97,364&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;93,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;89,046&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,110&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;151,067&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:36.787%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:9.442%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Year ended December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Eliminations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Fixed-price and unit-rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,035&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;36,127&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;48,826&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;T&amp;amp;M and cost-reimbursable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;79,426&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;9,526&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;88,952&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,561&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,646&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;665&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,542&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;87,022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;48,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;142,320&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Long-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,035&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;43,037&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;55,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Short-term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;81,987&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,262&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;86,577&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;87,022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;48,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;142,320&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_06f78687-0def-405a-baa0-8a975b546234"
      decimals="-3"
      id="F_f7e4a55b-35b3-4fe5-b500-bd76a15ce5b4"
      unitRef="U_USD">1618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7c78c8ad-38fa-4102-ac48-f7653ccce9fe"
      decimals="-3"
      id="F_f3c3b721-0df3-4589-9b72-a13f261a54ee"
      unitRef="U_USD">51015000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_c3a7e33f-3b2a-4e62-89ec-6b329f36ce78"
      decimals="-3"
      id="F_db01ade1-b404-44e3-b35c-8ce1ce2c7b82"
      unitRef="U_USD">-30417000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_a8ebeb7a-bb96-46e4-a1d7-165aa5761dc2"
      decimals="-3"
      id="F_585db5ce-c97e-4daf-9dbb-30ce56c58a9c"
      unitRef="U_USD">-33000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_8ef6ff0d-f798-451f-a56a-21690e3539d0"
      decimals="-3"
      id="F_adf69f94-fcf0-4237-b7b1-0578586499b3"
      unitRef="U_USD">22183000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_6e556d01-c547-458a-a98e-9b83be20cbf8"
      decimals="-3"
      id="F_ca045668-0ef9-413b-bc24-0af6d542f362"
      unitRef="U_USD">87914000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_879241d4-8e67-4078-b6f2-e9b783ae6fd9"
      decimals="-3"
      id="F_16d2311f-72a9-4428-8c37-5b871a82830b"
      unitRef="U_USD">38031000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_640ef6aa-b5f2-4dad-958e-d37660c7f86a"
      decimals="-3"
      id="F_b80bef91-e9af-48bd-8641-92a4920b21a2"
      unitRef="U_USD">125945000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_d862d658-577e-494e-8df1-aaaf02861fd5"
      decimals="-3"
      id="F_45ca27dd-0127-40a2-afe6-ac90e2ec854c"
      unitRef="U_USD">4016000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_4a193f8f-cc17-4e7e-87d5-3d5a87a85499"
      decimals="-3"
      id="F_dcec0d3b-da9f-4e7a-a7a9-905f18a8ce88"
      unitRef="U_USD">-1077000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_4591485a-8e55-4cd0-8d54-1ae706046e0f"
      decimals="-3"
      id="F_b1662ec9-3a4f-4728-8a88-3e946978fc8e"
      unitRef="U_USD">2939000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_833f9103-3927-46fc-a722-fc251a02e77f"
      decimals="-3"
      id="F_eb3ce1ca-8539-4ec0-a225-e036f285933a"
      unitRef="U_USD">93548000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_4c201577-ca6e-4ad5-8fa3-8980f68f6ea6"
      decimals="-3"
      id="F_ed4c4b3f-1fa8-4450-be0c-c4cfcf59048e"
      unitRef="U_USD">89046000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_6d90cd7b-8dee-4f6c-aeb5-be005a60fa04"
      decimals="-3"
      id="F_ee6294fd-3e11-4e7b-ac65-767ca56ec32e"
      unitRef="U_USD">-30417000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_8cb46c35-a6a9-452c-8adf-30d5a5f42f40"
      decimals="-3"
      id="F_aa64627c-f711-44a7-b27e-d39d9f09f5ed"
      unitRef="U_USD">-1110000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_9114a8db-624f-4af2-828c-a3b41a508a8d"
      unitRef="U_USD">151067000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_39b2f55f-413b-4bd7-a70a-93bfd3cdc4de"
      decimals="-3"
      id="F_464e0b18-f9e0-44ff-8099-52ff382647eb"
      unitRef="U_USD">1618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_a847befb-7bf5-4190-a135-70de8e21abad"
      decimals="-3"
      id="F_c06ad4a5-7cc3-4b71-b37f-ab3f2ff9f77f"
      unitRef="U_USD">82535000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_246f21ef-4b55-43a8-8366-c3934a370a15"
      decimals="-3"
      id="F_58e34426-9322-442f-b3f3-18c196434251"
      unitRef="U_USD">-30417000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_ce6032be-9c89-4fa7-a4d6-516a38833742"
      decimals="-3"
      id="F_dc0396a9-20a3-4c98-8e48-5c2b2dd1ce09"
      unitRef="U_USD">-33000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_10d79ba6-7b9d-404f-abff-543af2292ae2"
      decimals="-3"
      id="F_5a6044a7-4fef-49fc-bc48-7957d43a454e"
      unitRef="U_USD">53703000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_20813156-538f-4600-a39d-fb62806f1a85"
      decimals="-3"
      id="F_7a132083-c7e5-451b-8d17-c882938dc7c1"
      unitRef="U_USD">91930000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_4a9335f0-add2-49d0-8e37-7a2c1d77be3f"
      decimals="-3"
      id="F_4798f39e-d266-4154-bcea-2a42f3679d4d"
      unitRef="U_USD">6511000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_68bfab3d-d457-4e66-807d-c03156337973"
      decimals="-3"
      id="F_616f604b-e594-4902-a1fd-d928b25a9107"
      unitRef="U_USD">-1077000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_4a1745f1-d403-4e9b-927c-aec8bfb30e5a"
      decimals="-3"
      id="F_8001e60f-b1f3-414f-8202-c032586c3e18"
      unitRef="U_USD">97364000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_833f9103-3927-46fc-a722-fc251a02e77f"
      decimals="-3"
      id="F_0a01c947-c286-452a-9d4e-eb8582190930"
      unitRef="U_USD">93548000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_4c201577-ca6e-4ad5-8fa3-8980f68f6ea6"
      decimals="-3"
      id="F_0e6c4024-e12a-43d8-8a39-66a23ef64f81"
      unitRef="U_USD">89046000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_6d90cd7b-8dee-4f6c-aeb5-be005a60fa04"
      decimals="-3"
      id="F_529d7392-e4bf-4ea9-a999-b1531f266dd5"
      unitRef="U_USD">-30417000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_8cb46c35-a6a9-452c-8adf-30d5a5f42f40"
      decimals="-3"
      id="F_40fb6ca0-1c10-440a-8459-012f4283fd40"
      unitRef="U_USD">-1110000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_ec00815c-415a-4ca8-a46c-00c180116e78"
      unitRef="U_USD">151067000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_be09cd52-4568-408b-bdb6-ba23ade96279"
      decimals="-3"
      id="F_f3b19f8a-42de-45ea-91fd-bdab6d8ff4d2"
      unitRef="U_USD">5035000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_ebf1736a-1170-492a-8214-ef457875bc5a"
      decimals="-3"
      id="F_40365584-eea3-4b88-bc96-e6e2ebb9a5d2"
      unitRef="U_USD">36127000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_c1840173-ab69-485f-b424-fdd9a23ace30"
      decimals="-3"
      id="F_98a1080d-3ec1-41d0-ad6d-d0c10e7efb33"
      unitRef="U_USD">7671000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_a1761f83-7c5c-4336-b3f3-d87487bbf840"
      decimals="-3"
      id="F_fc56070d-61c2-4588-9eea-d8af03ac5603"
      unitRef="U_USD">-7000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_b7a3279c-fdc6-4bb6-b63e-a8ed8e06e4e7"
      decimals="-3"
      id="F_45f3b5ec-c808-4a38-84cb-07027bff2773"
      unitRef="U_USD">48826000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7b93b9fb-422c-4053-abd2-26d9ab39ec05"
      decimals="-3"
      id="F_a5d8c696-3068-4ef1-bd7a-7496cd86e026"
      unitRef="U_USD">79426000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_2a187e57-f37c-42cb-b040-9f912d512141"
      decimals="-3"
      id="F_5c144dcc-9fa9-4a7b-b7c7-ca46f847dd30"
      unitRef="U_USD">9526000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_ba57f9dd-ca27-4248-8727-bc9983095efa"
      decimals="-3"
      id="F_56bd1fbb-c475-4fd3-bb02-a3561d6b32cd"
      unitRef="U_USD">88952000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_54d43905-2604-4f3d-9db0-f0afb038ed44"
      decimals="-3"
      id="F_8bb4ba91-a36c-4b64-ab8a-0db8b3429fed"
      unitRef="U_USD">2561000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_574478c6-3424-4b10-81e0-a8e51c53a492"
      decimals="-3"
      id="F_09ef1c64-f50c-4ab5-8750-930a868b316a"
      unitRef="U_USD">2646000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_69875705-892d-41b2-80ba-7e0a92c631b5"
      decimals="-3"
      id="F_cce187d0-457a-4aa8-8101-efdf88f2076e"
      unitRef="U_USD">-665000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_ecfa9e75-7ee7-4840-92fb-cc49075d1648"
      decimals="-3"
      id="F_d056135d-e7b7-455b-a170-e6a33b9fadc0"
      unitRef="U_USD">4542000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_c8639d00-e088-4473-8175-a7f6d3c3e0c6"
      decimals="-3"
      id="F_c8658224-2b46-414f-ab42-8a21e61a4d41"
      unitRef="U_USD">87022000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_cbc768a4-e0c3-4cec-a01c-05e92d38b313"
      decimals="-3"
      id="F_f110530c-cae9-4712-ba89-fe49f5c738dd"
      unitRef="U_USD">48299000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_bbf9f0a1-e9b7-4b9d-bfb0-b1fc5cf2dc5f"
      decimals="-3"
      id="F_267dbd67-4406-47ac-b646-298f86ee44c6"
      unitRef="U_USD">7671000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_9e62d206-06dd-42d5-a27d-c90cc90990df"
      decimals="-3"
      id="F_7525d264-0b4e-4c08-b869-fb0019841f57"
      unitRef="U_USD">-672000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_3514d8eb-36cb-4b72-a269-3fb351c65b08"
      unitRef="U_USD">142320000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_774fe221-71b2-438a-8da2-b46cda39d663"
      decimals="-3"
      id="F_cf4115fa-b03b-4187-979f-f1e3f63485c0"
      unitRef="U_USD">5035000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_42157485-3d8c-40cf-89ba-67270f7bbea0"
      decimals="-3"
      id="F_d08d5766-1903-462d-b2e3-c41e52854a0e"
      unitRef="U_USD">43037000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_5dc5f49a-6d78-4f27-b6fd-cba90db18506"
      decimals="-3"
      id="F_3b7f706b-d1a1-4ebf-86d3-63886e06a55d"
      unitRef="U_USD">7671000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_45b1c6ba-852a-4bff-8537-06a247417f70"
      decimals="-3"
      id="F_76b170a1-df40-477a-b14c-fc955c85b33d"
      unitRef="U_USD">55743000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_6c42f479-dd72-456f-86ad-1450ace35beb"
      decimals="-3"
      id="F_524c3f7c-01b8-4d39-b4a3-fd235ec2efef"
      unitRef="U_USD">81987000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_675fc0ac-03b3-4668-8cf2-7bb640ea0347"
      decimals="-3"
      id="F_58369fa6-456e-4817-9d53-cd91c64ca46b"
      unitRef="U_USD">5262000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_96cb0217-26bb-4cf9-8b4e-f4235c892161"
      decimals="-3"
      id="F_79a59e6c-d409-4e87-aa87-ce829d52f9d9"
      unitRef="U_USD">-672000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_398fb557-9f10-42cc-b522-240ff7e51ae1"
      decimals="-3"
      id="F_954e1c0c-af2d-4a94-9749-7516e9faae6c"
      unitRef="U_USD">86577000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_c8639d00-e088-4473-8175-a7f6d3c3e0c6"
      decimals="-3"
      id="F_809a8549-8584-48b2-8aa0-ce34c80be801"
      unitRef="U_USD">87022000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_cbc768a4-e0c3-4cec-a01c-05e92d38b313"
      decimals="-3"
      id="F_260f43c4-5db6-4a8c-9158-4ac3542b1a3b"
      unitRef="U_USD">48299000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_bbf9f0a1-e9b7-4b9d-bfb0-b1fc5cf2dc5f"
      decimals="-3"
      id="F_a7cdaab5-c7c3-4d47-8287-b91bfb365205"
      unitRef="U_USD">7671000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_9e62d206-06dd-42d5-a27d-c90cc90990df"
      decimals="-3"
      id="F_e1e5e334-9656-44b6-9234-cbd436762ae0"
      unitRef="U_USD">-672000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_203ea4cb-716f-4e59-9bc1-53cba9f7c7f6"
      unitRef="U_USD">142320000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_1ab8c710-1ed7-4909-b520-ed3030c661b5">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table summarizes remaining performance obligations for each of our operating segments, disaggregated by contract type, at &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2023 (in thousands):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:36.505%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.975%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.975%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.975%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.2%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.975%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="14" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Fixed-price and unit-rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;502&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;11,446&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;709&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12,657&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;T&amp;amp;M and cost-reimbursable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;293&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;293&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;502&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;11,739&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;709&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12,950&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;We expect all of our performance obligations at December 31, 2023, to be recognized as revenue during 2024. &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;C&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;ertain factors and circumstances could result in changes in the timing of recognition of our performance obligations as revenue and the amounts ultimately recognized.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_d9b40c1a-b5f6-4bbc-a8d3-1a6ed5b34a88"
      decimals="-3"
      id="F_9b65a433-4054-47e1-8a66-f6cf354b1c9f"
      unitRef="U_USD">502000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_7adcd642-c74c-48ef-ac50-7b6601a8cfc3"
      decimals="-3"
      id="F_be56670a-907e-4e36-b8ba-ee85a3c8e466"
      unitRef="U_USD">11446000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_0583a672-521e-4eaf-a2a7-daf9543e70fa"
      decimals="-3"
      id="F_2e20efd8-73a1-4fb9-9072-b01a0f126567"
      unitRef="U_USD">709000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_0cb87387-c0b6-4e37-9819-9b55ee7f470c"
      decimals="-3"
      id="F_166da86f-3c10-45bc-a86d-a1322ddca6fa"
      unitRef="U_USD">12657000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_2935e2a4-dafe-4535-93c8-3946a64d44ec"
      decimals="-3"
      id="F_de24fc16-3a3a-40ff-af7f-275f8ec4bfa3"
      unitRef="U_USD">293000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_1cda6b85-7fa8-4c33-aaf0-76f037ac8dbf"
      decimals="-3"
      id="F_5b2003d9-0ea8-485b-aa7f-fa7ac712842d"
      unitRef="U_USD">293000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_5603366b-aec4-44b8-94c7-5351a28ea112"
      decimals="-3"
      id="F_1a3ae99b-6348-471b-8e5d-9a8993836a40"
      unitRef="U_USD">502000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_2157cccd-4322-435c-9ffb-a392a6e522c4"
      decimals="-3"
      id="F_800049b5-e41c-4fe2-8cbd-99e1d37df20f"
      unitRef="U_USD">11739000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_33ad9a6b-8e6e-4703-a364-62f40aaf9470"
      decimals="-3"
      id="F_30ae313a-b545-4a08-b624-dc0dfd7d2e58"
      unitRef="U_USD">709000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_bbcb29e5-94dc-47ce-a791-0c5a85df09fc"
      unitRef="U_USD">12950000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_b5828931-6c8d-4240-862c-1baa1052cb7c">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Information with respect to contracts that were incomplete at December 31, 2023 and 2022, is as follows (in thousands):&lt;/span&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:59.272%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Costs incurred to date&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;117,274&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;112,693&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Estimated losses incurred to date&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12,735&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12,610&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Sub-total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;104,539&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;100,083&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Billings to date&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;107,270&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;103,440&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,731&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,357&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The above amounts are included within the following captions on our Balance Sheet at December 31, 2023 and 2022 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:4.533%;text-indent:-3.17%;padding-left:2.933%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:59.272%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Contract assets&lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;&#160;(1), (2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,739&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,839&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Contract liabilities &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(3), (4), (5)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,470&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8,196&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,731&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,357&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;The decrease in contract assets from December 31, 2022 to December 31, 2023, was primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contract assets at December 31, 2023 and 2022, excluded $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, associated with revenue recognized in excess of amounts billed for which we have an unconditional right to the consideration. Such amounts are reflected within contract receivables. The increase from December 31, 2022 to December 31, 2023, was primarily due to a customer for our Services Division.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(3)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;The decrease in contract liabilities from December 31, 2022 to December 31, 2023, was primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(4)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue recognized during 2023 and 2022, related to amounts included in our contract liabilities balance at December 31, 2022 and 2021, was $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(5)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, primarily related to projects for our Shipyard Division. See &#x201c;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Changes in Project Estimates&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; below for further discussion of our accrued contract losses. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:CapitalizedContractCostGross
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_2d3a2d51-8bcf-4ffc-8a81-002233a373d5"
      unitRef="U_USD">117274000</us-gaap:CapitalizedContractCostGross>
    <us-gaap:CapitalizedContractCostGross
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_ab32f595-87c1-4d9b-830f-29124e3e2695"
      unitRef="U_USD">112693000</us-gaap:CapitalizedContractCostGross>
    <gifi:CapitalizedContractCostEstimatedProfitLossesIncurredToDate
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_04b944a2-1dea-44c6-90bf-aa5742f6e7e9"
      unitRef="U_USD">12735000</gifi:CapitalizedContractCostEstimatedProfitLossesIncurredToDate>
    <gifi:CapitalizedContractCostEstimatedProfitLossesIncurredToDate
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_f0e735ba-c216-4930-98cd-96565d89a20a"
      unitRef="U_USD">12610000</gifi:CapitalizedContractCostEstimatedProfitLossesIncurredToDate>
    <us-gaap:CapitalizedContractCostNet
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_0ecc54d7-e559-43e4-98c7-71f089a0cb5f"
      unitRef="U_USD">104539000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostNet
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_78c47418-66c0-4b8c-87e4-9f29deb9dca8"
      unitRef="U_USD">100083000</us-gaap:CapitalizedContractCostNet>
    <gifi:CapitalizedContractCostBillingsToDate
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_76e77ffa-54dc-4487-8e82-0bf7bf8c3f8b"
      unitRef="U_USD">107270000</gifi:CapitalizedContractCostBillingsToDate>
    <gifi:CapitalizedContractCostBillingsToDate
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_9aa40012-a304-4d79-bb9c-8472e40e8a99"
      unitRef="U_USD">103440000</gifi:CapitalizedContractCostBillingsToDate>
    <gifi:ContractWithCustomerAssetLiabilityNet
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_c8c07fb8-5a32-48b4-919c-6f60a1045062"
      unitRef="U_USD">-2731000</gifi:ContractWithCustomerAssetLiabilityNet>
    <gifi:ContractWithCustomerAssetLiabilityNet
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_64404173-6bd0-43fd-9b08-f587dede7ee0"
      unitRef="U_USD">-3357000</gifi:ContractWithCustomerAssetLiabilityNet>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_6c557e22-e38b-4cbb-ad0b-2c4c7ad33835"
      unitRef="U_USD">2739000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_939cf3a2-6c65-413e-8a78-797b4020c621"
      unitRef="U_USD">4839000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a"
      unitRef="U_USD">5470000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"
      unitRef="U_USD">8196000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <gifi:ContractWithCustomerAssetLiabilityNet
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_c4ee2c99-b55b-4310-a055-0d030fe8c400"
      unitRef="U_USD">-2731000</gifi:ContractWithCustomerAssetLiabilityNet>
    <gifi:ContractWithCustomerAssetLiabilityNet
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_f0cb1f05-a348-4f9f-a3bc-50c095667403"
      unitRef="U_USD">-3357000</gifi:ContractWithCustomerAssetLiabilityNet>
    <gifi:ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_50bc58c7-2012-4f32-835a-54d820cc1b29"
      unitRef="U_USD">6000000</gifi:ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent>
    <gifi:ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-5"
      id="F_ef73b8c1-ef1d-4b39-8c3b-0e844d434188"
      unitRef="U_USD">3600000</gifi:ContractWithCustomerAssetRevenueRecognizedInExcessOfAmountsBilledCurrent>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-5"
      id="F_e7a237e9-f7f9-4dfd-a6fe-9d05b556e28d"
      unitRef="U_USD">6600000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-5"
      id="F_96cf1b20-0624-4f91-917f-00552c709eba"
      unitRef="U_USD">2700000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <gifi:ContractWithCustomerLiabilityAccruedContractLossesCurrent
      contextRef="C_b19e0574-d5db-429e-b9ea-18e4968c8435"
      decimals="-5"
      id="F_69cb73cf-78f5-4e8f-a9a0-92c37b8b8a07"
      unitRef="U_USD">400000</gifi:ContractWithCustomerLiabilityAccruedContractLossesCurrent>
    <gifi:ContractWithCustomerLiabilityAccruedContractLossesCurrent
      contextRef="C_bc4a4886-4017-4268-826f-76e476050225"
      decimals="-5"
      id="F_649f6ed4-161c-4d99-887f-63451ab9475e"
      unitRef="U_USD">1600000</gifi:ContractWithCustomerLiabilityAccruedContractLossesCurrent>
    <gifi:DisclosureOfSignificantCustomersTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_c776ed5d-0be1-4335-b485-0b741fcf5fd5">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table summarizes revenue for customers that accounted for 10% or more of our consolidated revenue for 2023 and 2022 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:47.57%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:22.256%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:22.256%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer A&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;70,497&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;54,257&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer B&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;26,956&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;*&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer C &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;16,498&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;14,635&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer D &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;15,481&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;*&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:4.133%;text-indent:-3.602%;padding-left:3.333%;font-size:10pt;margin-top:3pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;(*)	The customer revenue was less than &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% of consolidated revenue for the year.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;For 2023, these customers accounted for &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% or more of our consolidated revenue due to lower revenue for the period associated with a charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for our Shipyard Division, resulting from the resolution of our MPSV Litigation. See &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x201c;Changes in Project Estimates&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; below and Note 7 for further discussion of the charge and resolution of our MPSV Litigation.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</gifi:DisclosureOfSignificantCustomersTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_e63efff0-f5d7-48b3-acc7-c3aa44976a25"
      decimals="-3"
      id="F_32810351-34ce-4fcb-b941-8e6eb136d7f3"
      unitRef="U_USD">70497000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_de08cc50-172f-4488-a7cb-8e8aa181d563"
      decimals="-3"
      id="F_3b7105df-62fd-4e5d-9176-657287ffa95d"
      unitRef="U_USD">54257000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7c189e04-103c-4e94-8dd4-b12fb43dc0b7"
      decimals="-3"
      id="F_5442c9a2-c59d-4140-9d9a-cf35f70dc42d"
      unitRef="U_USD">26956000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_0544c597-1d08-4a4e-8030-ada920dc1c4a"
      decimals="-3"
      id="F_5672939d-5663-4220-a7fd-741e60520ffa"
      unitRef="U_USD">16498000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_9b792a7c-8c0c-4ee0-a691-f444b31ac32c"
      decimals="-3"
      id="F_cf0f42d6-c3c3-4cf5-91ea-56be196a9482"
      unitRef="U_USD">14635000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_0cfadcca-d5b0-49a0-adae-50a0fa885be4"
      decimals="-3"
      id="F_6eddde0d-af50-4973-9a3e-13f4f119a42e"
      unitRef="U_USD">15481000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_c1ff8c32-ee9b-4094-a536-3b612f449a7f"
      decimals="INF"
      id="F_f02d7d7e-0d45-4906-8d02-95669f2e3a6c"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_0544c597-1d08-4a4e-8030-ada920dc1c4a"
      decimals="INF"
      id="F_2236f5cc-f863-439e-865a-50beda13a18e"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="C_0cfadcca-d5b0-49a0-adae-50a0fa885be4"
      decimals="INF"
      id="F_f01e477a-58a2-4e56-a7ca-7765257770d5"
      unitRef="U_pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:LitigationSettlementExpense
      contextRef="C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc"
      decimals="-5"
      id="F_008e7f57-55d6-4e55-a62b-60ce8e9326df"
      unitRef="U_USD">32500000</us-gaap:LitigationSettlementExpense>
    <gifi:RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-5"
      id="F_ceb0f2fe-6a86-499c-b832-6edc55677864"
      unitRef="U_USD">400000</gifi:RecognizedIncomeAssociatedWithRevisionsToAllowanceForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_0754e1cf-65bd-4067-94c8-b84ff6d8998d"
      unitRef="U_USD">200000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_dd42000e-614a-4544-9fb0-3702fb259f77"
      decimals="-5"
      id="F_04f82a31-7073-4ab7-8f55-b9ede388ddcf"
      unitRef="U_USD">600000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <gifi:RevenueVariableConsiderationContractPriceReduction
      contextRef="C_b19e0574-d5db-429e-b9ea-18e4968c8435"
      decimals="-5"
      id="F_231592eb-c8a7-4190-a6bd-ae220fe94fe5"
      unitRef="U_USD">1400000</gifi:RevenueVariableConsiderationContractPriceReduction>
    <gifi:RevenueVariableConsiderationContractPriceReduction
      contextRef="C_bc4a4886-4017-4268-826f-76e476050225"
      decimals="-5"
      id="F_8c2c4720-c2d7-47e7-b9fa-c305c34f29d7"
      unitRef="U_USD">1400000</gifi:RevenueVariableConsiderationContractPriceReduction>
    <us-gaap:LitigationSettlementExpense
      contextRef="C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc"
      decimals="-5"
      id="F_57b1bc0a-20b9-478e-8dc7-f3c6331dee1c"
      unitRef="U_USD">32500000</us-gaap:LitigationSettlementExpense>
    <gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins
      contextRef="C_794803ce-d97e-4446-ba7a-1a2fd69d3f78"
      decimals="-5"
      id="F_d471fc5f-c71d-44f6-948d-7cce619314b7"
      unitRef="U_USD">2700000</gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins>
    <gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins
      contextRef="C_9fd17654-bce1-4d02-9a97-4efc13f49f07"
      decimals="-5"
      id="F_803f9e51-20fd-4d17-8430-6ddb1ef4057b"
      unitRef="U_USD">1300000</gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins>
    <gifi:NumberOfVehicleFerryProjects
      contextRef="C_3fc4f133-468c-4e2a-828c-774b0945c0ca"
      decimals="INF"
      id="F_a76b284e-1532-40b9-810c-4f6e003b6e07"
      unitRef="U_Vechicle">2</gifi:NumberOfVehicleFerryProjects>
    <gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins
      contextRef="C_a65e9edb-0747-45b3-8cb2-47af918e5b15"
      decimals="-5"
      id="F_7c539acf-3887-4d3a-87b1-bdf2b3eec0b9"
      unitRef="U_USD">1400000</gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins>
    <gifi:NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges
      contextRef="C_a65e9edb-0747-45b3-8cb2-47af918e5b15"
      decimals="INF"
      id="F_d72f3818-8bbe-405d-8beb-c860a2caffe3"
      unitRef="U_Vechicle">2</gifi:NumberOfVehicleFerryProjectsWithReworkAndConstructionChallenges>
    <gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins
      contextRef="C_91e23f16-98d0-4e7b-8b3b-2b15f08dcf1d"
      decimals="-5"
      id="F_a748bf4d-f8f2-4bf8-a69d-8a7b399ee86c"
      unitRef="U_USD">2000000</gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins>
    <gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins
      contextRef="C_7d6fc82f-38dc-4a2a-a2ba-042ac17cc7e4"
      decimals="-5"
      id="F_46c02f83-4e08-4c98-8a49-87dd28552fbb"
      unitRef="U_USD">900000</gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins>
    <gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins
      contextRef="C_3fc4f133-468c-4e2a-828c-774b0945c0ca"
      decimals="-5"
      id="F_29b1e3d6-c5b3-4645-a7bb-d77c2b369319"
      unitRef="U_USD">1100000</gifi:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimatedMargins>
    <gifi:ImpactOfHurricaneIdaDescription
      contextRef="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768"
      id="F_68735a75-4047-4226-94d4-0e2c9b707003">During 2021, our operations were impacted by Hurricane Ida, which made landfall near Houma, Louisiana as a high-end Category 4 hurricane, causing debris and damage to our buildings and equipment at our Houma Facilities. Our insurance coverages in effect at the time of the storm generally specified coverage amounts for each of our buildings (including contents) and major equipment.  </gifi:ImpactOfHurricaneIdaDescription>
    <us-gaap:ProceedsFromInsuranceSettlementOperatingActivities
      contextRef="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768"
      decimals="-5"
      id="F_76c425f2-924b-483c-a543-6243745f1db3"
      unitRef="U_USD">2200000</us-gaap:ProceedsFromInsuranceSettlementOperatingActivities>
    <us-gaap:ProceedsFromInsuranceSettlementOperatingActivities
      contextRef="C_9d017577-455b-4de6-8fba-e0c38d593225"
      decimals="-5"
      id="F_9d2e1d71-aaed-409f-b96e-1b41ca705f0c"
      unitRef="U_USD">13100000</us-gaap:ProceedsFromInsuranceSettlementOperatingActivities>
    <us-gaap:InsuranceSettlementsReceivableNoncurrent
      contextRef="C_001c1d83-4997-49ee-94c6-6038db485db0"
      decimals="-5"
      id="F_9168ef0a-fc30-4407-995e-36d5006d0842"
      unitRef="U_USD">2000000</us-gaap:InsuranceSettlementsReceivableNoncurrent>
    <gifi:GainLossOnInsuranceRecovery
      contextRef="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768"
      decimals="-5"
      id="F_00956d41-f3b1-4f9e-b301-d66979ae71e7"
      unitRef="U_USD">2000000</gifi:GainLossOnInsuranceRecovery>
    <gifi:GainOnInterruptionsInsuranceRecovery
      contextRef="C_e5ae5891-f556-4bf1-b50b-32f9c72a9768"
      decimals="-5"
      id="F_a1c86d84-b1df-4a5a-9522-cc2ea65f6555"
      unitRef="U_USD">600000</gifi:GainOnInterruptionsInsuranceRecovery>
    <gifi:GainLossOnInsuranceRecovery
      contextRef="C_9d017577-455b-4de6-8fba-e0c38d593225"
      decimals="-5"
      id="F_29ad433f-17cc-416a-8494-edf11536b914"
      unitRef="U_USD">7500000</gifi:GainLossOnInsuranceRecovery>
    <gifi:GainOnInterruptionsInsuranceRecovery
      contextRef="C_9d017577-455b-4de6-8fba-e0c38d593225"
      decimals="-5"
      id="F_307b7a45-9277-4706-9fab-0c28438b101f"
      unitRef="U_USD">3700000</gifi:GainOnInterruptionsInsuranceRecovery>
    <gifi:ChargesRelatedToDeductiblesTotal
      contextRef="C_b5722d4b-25c9-4479-aa56-31845020b7af"
      decimals="-5"
      id="F_6ce6417f-caec-4def-be2d-c495794f7317"
      unitRef="U_USD">500000</gifi:ChargesRelatedToDeductiblesTotal>
    <gifi:ChargesRelatedToDeductiblesTotal
      contextRef="C_92e058ee-fa6b-41c3-b3d6-f9722e8f48d1"
      decimals="-5"
      id="F_1c26a799-5d71-4f9f-98f9-e77120ce3d9f"
      unitRef="U_USD">200000</gifi:ChargesRelatedToDeductiblesTotal>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_5a408e47-75a6-4d8b-8af8-276c935f8fba">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;3. LONG-LIVED ASSETS AND LEASED FACILITIES AND EQUIPMENT&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property, plant and equipment&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property, plant and equipment consisted of the following at December 31, 2023 and 2022 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:57.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.4%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.78%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.34%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.34%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Estimated&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Useful Life&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;(in Years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Land&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,103&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,376&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Buildings&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;&#160;to &lt;/span&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;25&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;19,232&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;25,584&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Machinery and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;&#160;to &lt;/span&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;64,035&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;67,851&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;&#160;to &lt;/span&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;762&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;994&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Transportation equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;&#160;to &lt;/span&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,369&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,361&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Improvements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;17,277&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23,246&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Construction in progress&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,060&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,881&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total property, plant and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;107,838&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;127,293&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Accumulated depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;84,693&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;96,139&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Property, plant and equipment, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23,145&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;31,154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Depreciation expense for 2023 and 2022 was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In February 2024, we sold certain property of our Fabrication Division that was part of our Houma Facilities for&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million (net of transaction and other costs). The property sold was classified as an asset held for sale (&#x201c;Houma AHFS&#x201d;) on our Balance Sheet at December 31, 2023, and its carrying value was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, which was less than its fair value based on the proceeds from its sale.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Leased Facilities and Equipment&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We lease certain office, warehouse and operating facilities under long-term lease arrangements that expire at various dates through &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;October 2027&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, some of which include renewal options ranging from &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_a8a89eb0-e986-42d3-855c-14bcaa1d2563;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;one&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;20 years&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; At &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2023&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, our &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_b8306089-f1e0-427d-b2eb-9198d2ff7286;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;lease asset&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_1145cb82-332f-4336-832e-9a7b7c5bd883;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;current lease liability&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_04f8f0bf-472b-4379-b781-04b0610392b1;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;long-term lease liability&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; were &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively. Our lease obligations include any renewal options that we intend to exercise. &lt;/span&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Future minimum payments under leases having initial terms of more than twelve months are as follows (in thousands):&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:80.22%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.9%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.88%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Minimum&lt;br/&gt;Payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;884&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;424&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;76&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;64&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,448&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Less: interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;99&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Present value of lease payments &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1), (2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,349&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;During 2022, we entered into a sublease arrangement with a third-party for the remainder of our corporate office lease, which will partially recover our lease costs for the office for the duration of the lease. In connection therewith, we recorded an impairment charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million associated with the underlying right-of-use asset for the corporate office lease. The impairment is included in other (income) expense, net on our Statement of Operations and is reflected within our Corporate Division.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;The discount rate used to determine the present value of our lease payments was based on the interest rate on our LC Facility adjusted for terms similar to that of our leased properties. At December 31, 2023, our weighted-average remaining lease term was approximately &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.9&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; years and the weighted-average discount rate used to derive our lease liability was &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;L&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;ease expense for our leased facilities and equipment, which includes lease asset amortization expense and expense for leases with original terms that are twelve months or less, for &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively. Cash paid for leases for &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023 and 2022 was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively. Certain of our leases are subject to subleases with third parties. Sublease income for &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2023 and 2022&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, and is &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;included in other (income) expense, net on our Statement of Operations.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;During 2022, we sold a purchase option for $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million (net of transaction and other costs) that was entered into in connection with a previous acquisition that provided us with a right to buy a leased fabrication and operating facility for a nominal amount. &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;No&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; material gain or loss was recognized on the sale of the purchase option as the net proceeds approximated the carrying value of the underlying right-of-use asset associated with the leased facility. The net proceeds are included in proceeds from sale of property and equipment on our Statement of Cash Flows.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Goodwill and Other Intangible Assets&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Goodwill&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; As discussed in Note 1, goodwill is not amortized, but instead is reviewed for impairment at least annually at a reporting unit level, absent indicators of impairment or when other actions require an impairment assessment (such as a change in reporting units). We perform our annual impairment assessment during the fourth quarter of each year based on balances as of October 1. At October 1, 2023, our Services Division represented our only reporting unit. During 2023, we had &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;no&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; indicators of impairment and had no changes to our reporting unit. We performed a qualitative assessment of our goodwill, and determined that it was not more likely than not that the fair value of our reporting unit was less than its carrying value. Accordingly, a quantitative assessment was not deemed necessary.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Other Intangible Assets&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other intangible assets were derived from the estimated fair value of existing underlying customer relationships associated with a previous acquisition and consisted of the following at December 31, 2023 and 2022 (in thousands):&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:9pt;font-family:Times New Roman;"&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:59.272%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Accumulated amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;296&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Intangible assets, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;842&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Our intangible assets have estimated lives of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;seven years&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and amortization expense for 2023 and 2022 was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively. Amortization expense is estimated to be $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million to $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for each of 2024, 2025, 2026, 2027 and 2028.&lt;/span&gt;&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_6e492bfb-fca8-426e-8b51-c47569c81b3d">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Property, plant and equipment consisted of the following at December 31, 2023 and 2022 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:57.5%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.4%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.78%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.34%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.34%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:10.82%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Estimated&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Useful Life&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;(in Years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Land&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,103&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,376&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Buildings&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;&#160;to &lt;/span&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;25&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;19,232&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;25,584&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Machinery and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;&#160;to &lt;/span&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;64,035&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;67,851&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;&#160;to &lt;/span&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;762&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;994&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Transportation equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;&#160;to &lt;/span&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,369&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,361&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Improvements&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;17,277&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23,246&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Construction in progress&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,060&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,881&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total property, plant and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;107,838&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;127,293&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Accumulated depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;84,693&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;96,139&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Property, plant and equipment, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23,145&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;31,154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_d4e6b6b0-e516-4647-a511-ade3e6406508"
      decimals="-3"
      id="F_76eb6d06-e32b-4ff3-ad8c-df2f949fc91f"
      unitRef="U_USD">2103000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_b6b8c9a8-1292-4c9f-a653-f5ce9ac89023"
      decimals="-3"
      id="F_0fc1421a-31dd-4fe7-b35a-dd41647875b7"
      unitRef="U_USD">4376000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_72022df9-790b-49f8-8bfc-00431481897d"
      id="F_18189664-553d-4144-a51c-66093e08094c">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_6f9a329b-4226-4d40-989b-b48f609f1c3f"
      id="F_bfb2140a-d213-4d5e-9deb-2851d7076001">P25Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_2be31468-ff16-44f6-86af-8e8e108a34ad"
      decimals="-3"
      id="F_c830b1ed-d4ea-4b6a-9504-68afc69a639c"
      unitRef="U_USD">19232000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_4e668483-9363-48fa-b143-7dd0b392d882"
      decimals="-3"
      id="F_042bd672-67aa-4cb5-af56-70a6354e9f33"
      unitRef="U_USD">25584000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_6d4194db-103e-4db0-8ec6-a3bd25c4c447"
      id="F_93557f38-a96b-44da-aa76-647abc159209">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_fe5c1386-484f-47ae-878a-5f3c0b7221e8"
      id="F_f0d82eb6-0293-4595-bfc6-50b9e254a402">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_314657af-8da0-44b1-a2fe-d29bf7c32141"
      decimals="-3"
      id="F_3f3314fc-942c-4db4-9444-097267d769f3"
      unitRef="U_USD">64035000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_7300738f-49f5-4cac-9ef7-26cdeedeee9a"
      decimals="-3"
      id="F_b3cc01af-0881-4401-849b-98a05e253488"
      unitRef="U_USD">67851000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_410c80b6-ccc1-4936-8966-f3e944d59b81"
      id="F_bd610548-a0ba-4718-907f-3e4a0b279ae1">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_87a8f7e1-0291-4b40-a041-0eb5b58b8aa9"
      id="F_86b568cf-7192-40e1-acd3-d582541b340d">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_ca3865b9-b250-441a-9831-67ce11a94901"
      decimals="-3"
      id="F_c143e0c6-af89-424c-93af-baa01bccba80"
      unitRef="U_USD">762000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_28f7d076-30a1-4561-9acd-820691c07dc5"
      decimals="-3"
      id="F_cfda6f12-8279-401d-a763-fef9c13e67d6"
      unitRef="U_USD">994000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_4842ef49-1790-4f0b-b666-da169d6f4753"
      id="F_cbc5a37e-d6e2-4001-bbaf-a9f568acbcb6">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_fbe3999c-ec84-4b20-b7a8-cddd6373ae5d"
      id="F_daa6856e-2112-4453-b40b-95672c5e6237">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_0d8b698d-79c5-46e8-8ad9-490b93e810fc"
      decimals="-3"
      id="F_e2998fe4-6b28-422e-8696-6234a1261fae"
      unitRef="U_USD">2369000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_c7a6b99c-ab2a-4615-a17e-cbca4f0eabab"
      decimals="-3"
      id="F_b669b274-3da5-4d45-957d-e3520272fc9b"
      unitRef="U_USD">2361000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="C_95eb78d7-d965-42b9-a3b5-ffafe58b4ab6"
      id="F_6e805ad0-eb3d-4f5b-aed6-3ea609993846">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_95eb78d7-d965-42b9-a3b5-ffafe58b4ab6"
      decimals="-3"
      id="F_acf8d282-9d1e-4e04-a48c-a2525f7d62ec"
      unitRef="U_USD">17277000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_699b86a3-de20-4d0d-9749-221991b9bfb8"
      decimals="-3"
      id="F_8a5c8e4e-7e11-4e74-a57d-d6b71d6eafc2"
      unitRef="U_USD">23246000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_dcfb10ab-a2a0-4052-b499-ab340825ac79"
      decimals="-3"
      id="F_3c92cbbb-edd2-4676-9cd8-89216da779a7"
      unitRef="U_USD">2060000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_ce912fd4-11a3-42fe-b755-4418d8982304"
      decimals="-3"
      id="F_b2c0e6ce-4667-4c81-9631-7521e1f0d829"
      unitRef="U_USD">2881000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_5553aa99-80cf-4c02-aba1-97ae8f1ad71e"
      unitRef="U_USD">107838000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_9372e6d1-350c-4ddf-aafa-71b5ff476111"
      unitRef="U_USD">127293000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_f997c0b0-fb26-44a6-84ee-1d4c27d38255"
      unitRef="U_USD">84693000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_d1ea6ff2-876a-4969-9bbc-fb4fafa09af0"
      unitRef="U_USD">96139000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_51f54220-a484-4a7e-ab5c-6dce8df8254c"
      unitRef="U_USD">23145000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_6f559169-c345-45fd-b754-134917769089"
      unitRef="U_USD">31154000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-5"
      id="F_66f62c18-7219-4184-a80a-60c94c393d41"
      unitRef="U_USD">4900000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-5"
      id="F_84fe2d9b-e7c2-4a33-8726-8ba71aa4ebf3"
      unitRef="U_USD">4700000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <gifi:ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts
      contextRef="C_01ac159e-3c97-46af-b432-8dbdc656cd94"
      decimals="-5"
      id="F_cb3edafd-2d95-4e11-b2d4-a35dea4f3caf"
      unitRef="U_USD">8500000</gifi:ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent
      contextRef="C_9e7cb61d-b813-42a4-aa1a-261cb783d9d5"
      decimals="-5"
      id="F_0e4bf32d-5c20-4efc-b20a-e1852af47c47"
      unitRef="U_USD">5600000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <gifi:LeaseDescription
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_40c4b768-65ce-4a4d-9bd5-7971c0692791">We lease certain office, warehouse and operating facilities under long-term lease arrangements that expire at various dates through October 2027, some of which include renewal options ranging from one to 20 years.</gifi:LeaseDescription>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="C_18924d07-f6c4-4e2b-915b-55f0f0b7d733"
      id="F_d609a127-4df4-4d71-9164-9683dd8c1e67">P20Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_b042ae1f-6bba-4a51-8ece-6f6d27e43980"
      unitRef="U_USD">700000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_4dd43051-5c7d-401e-91a9-e5d82fa4a619"
      unitRef="U_USD">800000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_41554dbe-bf62-4014-970a-4abc66842f32"
      unitRef="U_USD">500000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_65077245-a654-4608-8af0-2c4526891d15">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Future minimum payments under leases having initial terms of more than twelve months are as follows (in thousands):&lt;/span&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:80.22%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.9%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:15.88%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Minimum&lt;br/&gt;Payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;884&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;424&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;76&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;64&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,448&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Less: interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;99&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Present value of lease payments &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1), (2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,349&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;During 2022, we entered into a sublease arrangement with a third-party for the remainder of our corporate office lease, which will partially recover our lease costs for the office for the duration of the lease. In connection therewith, we recorded an impairment charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million associated with the underlying right-of-use asset for the corporate office lease. The impairment is included in other (income) expense, net on our Statement of Operations and is reflected within our Corporate Division.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;The discount rate used to determine the present value of our lease payments was based on the interest rate on our LC Facility adjusted for terms similar to that of our leased properties. At December 31, 2023, our weighted-average remaining lease term was approximately &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.9&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; years and the weighted-average discount rate used to derive our lease liability was &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;L&lt;/span&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_7e220390-631e-47e4-8603-abcb7accced1"
      unitRef="U_USD">884000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_762a0695-3d49-48b4-a410-a848b0d501c2"
      unitRef="U_USD">424000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_ab880ec1-4c67-4c35-8551-4fabfae80584"
      unitRef="U_USD">76000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_253e0388-a04f-4697-903b-ecd75aaaa726"
      unitRef="U_USD">64000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_b8202288-17aa-4719-99f1-62b915f8e0d2"
      unitRef="U_USD">1448000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_5ed52b55-5308-413d-8065-0c7db3ea6c52"
      unitRef="U_USD">99000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_55a3bdf6-02b0-48b2-b4b8-a49a6473403b"
      unitRef="U_USD">1349000</us-gaap:OperatingLeaseLiability>
    <us-gaap:AssetImpairmentCharges
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-5"
      id="F_248f0762-b4fa-4ece-984a-6dcae2644eb8"
      unitRef="U_USD">500000</us-gaap:AssetImpairmentCharges>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      id="F_85d4396b-6834-4208-862f-7dd590cebf67">P1Y10M24D</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseDiscountRate
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="3"
      id="F_dbe740df-a1d1-497d-8f08-13b3d46a1cda"
      unitRef="U_pure">0.069</us-gaap:LesseeOperatingLeaseDiscountRate>
    <us-gaap:OperatingLeaseExpense
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-5"
      id="F_be83b0a7-9f29-4b0d-adfc-84817b07622c"
      unitRef="U_USD">1700000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-5"
      id="F_c474f674-4ad9-41e1-901f-57c09f77caeb"
      unitRef="U_USD">1600000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeasePayments
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-5"
      id="F_7d22f088-b19a-4784-a60a-e3f026e646c9"
      unitRef="U_USD">2000000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-5"
      id="F_d03526e2-c734-43e6-9bb9-2fb77fd51c3a"
      unitRef="U_USD">2000000</us-gaap:OperatingLeasePayments>
    <us-gaap:SubleaseIncome
      contextRef="C_74d4f2b2-4a54-47f5-9e9f-ed053b426e3b"
      decimals="-5"
      id="F_902c119e-a898-43c5-93cf-33365688e7ed"
      unitRef="U_USD">600000</us-gaap:SubleaseIncome>
    <us-gaap:SubleaseIncome
      contextRef="C_a4fb150a-2806-4d20-a9b8-e30b9e66a2df"
      decimals="-5"
      id="F_7d6ab6f8-cb05-4ee1-89a9-3def2c3d4677"
      unitRef="U_USD">400000</us-gaap:SubleaseIncome>
    <gifi:ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts
      contextRef="C_c53b35c5-eb37-49cf-acb6-48c5c967a1d0"
      decimals="-5"
      id="F_a8793877-9a55-439a-928f-c3db36439c40"
      unitRef="U_USD">1900000</gifi:ProceedsFromSaleOfAssetsNetOfTransactionAndOtherCosts>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="C_c53b35c5-eb37-49cf-acb6-48c5c967a1d0"
      decimals="INF"
      id="F_70bef2dd-59e4-468e-9f8f-c38183e37b52"
      unitRef="U_USD">0</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="INF"
      id="F_05c5387e-5c81-428d-89e3-c7bcc1b1a847"
      unitRef="U_USD">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_4e8816ac-b90a-438a-a229-dbe1be57fa28">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Other intangible assets were derived from the estimated fair value of existing underlying customer relationships associated with a previous acquisition and consisted of the following at December 31, 2023 and 2022 (in thousands):&lt;/span&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:59.272%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:16.403%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Accumulated amortization&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;296&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;154&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Intangible assets, net&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;700&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;842&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedCustomerRelationshipsGross
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_caa3ebd7-81d4-4d5c-9389-1ab51746afb1"
      unitRef="U_USD">996000</us-gaap:FiniteLivedCustomerRelationshipsGross>
    <us-gaap:FiniteLivedCustomerRelationshipsGross
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_282aa45d-ce20-4c8b-997a-ebd3678c02c9"
      unitRef="U_USD">996000</us-gaap:FiniteLivedCustomerRelationshipsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_86e896a0-8bf9-439a-bf81-bb189e73e57f"
      unitRef="U_USD">-296000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_46ed2eaa-6c18-4ea3-8a95-e8eec8667f50"
      unitRef="U_USD">-154000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_16880c38-23e9-482f-abb3-2a32185b2299"
      unitRef="U_USD">700000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_3e4968aa-da53-4401-bc9d-7dca364de6ee"
      unitRef="U_USD">842000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_8caa51a3-a9e6-46a9-b8a6-7e8b2d1e0f9b"
      id="F_fb59d7e6-4398-477f-ae13-ffcb4087e59b">P7Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="C_934b968b-5d1d-469e-a030-b99ef2258abd"
      decimals="-5"
      id="F_e8f9051e-9374-49c6-bd5e-5ebe035970de"
      unitRef="U_USD">100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="C_585ab07a-4a7e-4414-848f-d778e266a6e2"
      decimals="-5"
      id="F_df782120-cd10-41f5-ba20-1657b59146d1"
      unitRef="U_USD">100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths
      contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32"
      decimals="-5"
      id="F_6294b0bf-a14f-4c57-8498-04b2281469d5"
      unitRef="U_USD">100000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo
      contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32"
      decimals="-5"
      id="F_fec03649-a3c8-4330-99e0-d96ebcf2e935"
      unitRef="U_USD">100000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree
      contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32"
      decimals="-5"
      id="F_df3ad5d3-0fd4-406a-b0c9-a1b4a5ee9ca9"
      unitRef="U_USD">100000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour
      contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32"
      decimals="-5"
      id="F_2fe9e7b0-eba1-432a-a9dd-918dc2aed4eb"
      unitRef="U_USD">100000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive
      contextRef="C_c430aba2-bce6-4893-b10b-7d09271ece32"
      decimals="-5"
      id="F_9cbbe90b-efb7-4f22-84fb-39ba27cc8817"
      unitRef="U_USD">100000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths
      contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560"
      decimals="-5"
      id="F_a5d4edea-2570-4d0c-9be0-69dd2224fddb"
      unitRef="U_USD">200000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextRollingTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo
      contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560"
      decimals="-5"
      id="F_4246f58e-66c6-470c-b559-852e05a58cf5"
      unitRef="U_USD">200000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree
      contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560"
      decimals="-5"
      id="F_44ed5efa-e432-45fa-a568-5ecc5e9dd299"
      unitRef="U_USD">200000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour
      contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560"
      decimals="-5"
      id="F_1751a663-844f-4e46-aabf-bd67b240b430"
      unitRef="U_USD">200000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive
      contextRef="C_65b19e72-420e-4aa7-9f18-0838a5d57560"
      decimals="-5"
      id="F_5e3f1bb5-4a2d-4e42-9551-dbaf4aed4b3b"
      unitRef="U_USD">200000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRollingYearFive>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_5868346f-b29c-4ae9-860d-99e1dd5a49bd">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;4. CREDIT FACILITIES AND DEBT&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;LC Facility&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;On May &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5, 2023, we amended our LC Facility with Whitney Bank to reduce our letters of credit capacity from $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;20.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million to $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, subject to our cash securitization of the letters of credit, and extend the maturity date to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;June 30, 2024&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. Commitment fees on the unused portion of the LC Facility are &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% per annum and interest on outstanding letters of credit is &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% per annum. At December 31, 2023, we had &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million of outstanding letters of credit under the LC Facility. See Note 7 for further discussion of our letters of credit and associated security requirements.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Surety Bonds&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We issue surety bonds in the ordinary course of business to support our projects. At December 31, 2023, we had &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;52.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million of outstanding surety bonds, of which&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;45.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million relates to our Ferry Projects for our Shipyard Division and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million relates to our Fabrication Division contracts and certain of our insurance coverages. See Note 7 for further discussion of our surety bonds and related indemnification obligations.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Note Agreement&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In connection with the resolution of our MPSV Litigation and the Settlement Agreement, on November 6, 2023, we entered into a promissory note (&#x201c;Note Agreement&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x201d;) with one of our Sureties (Fidelity &amp;amp; Deposit Company of Maryland (&#x201c;FDC&#x201d;) and Zurich American Insurance Company (together with FDC, &#x201c;Zurich&#x201d;)), pursuant to which we will pay Zurich $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;20.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million. The Note Agreement bears interest at a fixed rate of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% per annum commencing on January 1, 2024, with &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;principal and interest payable in &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; equal annual installments&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; of approximately $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, beginning on &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2024&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and ending on &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 31, 2038&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Future annual principal maturities under the Note Agreement are as follows (in thousands): &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:9pt;font-family:Times New Roman;"&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:81.156%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.92%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:14.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Principal&lt;br/&gt;Maturities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,075&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,108&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,141&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,175&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,210&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;14,291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total maturities &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1), (2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;20,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;At December 31, 2023, the estimated present value of the Note Agreement amount was $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million based on an estimated market rate of interest.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Due to the forbearance of interest until January 1, 2024, the effective rate on the Note Agreement is &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% per annum. Accordingly, we accrued interest expense of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million during 2023 associated with the difference between the effective interest rate and stated interest rate on the Note Agreement.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;See Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Mortgage Agreement and Restrictive Covenant Agreement&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In connection with the receipt of a consent for the Shipyard Transaction from Zurich, we entered into a multiple indebtedness mortgage (&#x201c;Mortgage Agreement&#x201d;) and a restrictive covenant arrangement (&#x201c;Restrictive Covenant Agreement&#x201d;) with Zurich to secure our obligations for our MPSV projects and forty-vehicle ferry projects. The Mortgage Agreement encumbers all real estate associated with the Houma Facilities and includes certain covenants and events of default. In connection with the resolution of our MPSV Litigation and Note Agreement entered into with Zurich, the Mortgage Agreement was modified on November 6, 2023, to include a provision requiring that &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;50&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; percent of the net proceeds received by us in excess of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million from the sale of any real estate of our Houma Facilities be used to make early payments on the principal balance under the Note Agreement. The Mortgage Agreement will terminate when the obligations and liabilities of Zurich associated with the outstanding surety bonds for the forty-vehicle ferry projects are discharged and the Note Agreement is repaid. The Restrictive Covenant Agreement precluded us from paying dividends or repurchasing shares of our common stock; however, in connection with the Settlement Agreement, the Restrictive Covenant Agreement was terminated. See Note 1 for further discussion of the Shipyard Transaction and Note 7 for further discussion of the resolution of our MPSV Litigation and the Settlement Agreement.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Insurance Finance Arrangements&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In connection with the renewal of our property and equipment insurance coverages during 2022, and general liability insurance coverages during 2023, we entered into short-term premium finance arrangements (&#x201c;Insurance Finance Arrangements&#x201d;). The property and equipment arrangement totaled $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million,&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; payable in ten equal monthly installments through March 2023&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, with interest at a fixed rate of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% per annum. The general liability arrangement totaled $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;payable in eight equal monthly installments through August 2023&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, with interest at a fixed rate of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;6.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% per annum. We considered the transactions to be non-cash financing activities, with the initial financed amount reflected within accrued expenses and other liabilities, and a corresponding asset reflected within prepaid expenses and other assets, on our Balance Sheet. During 2023 and 2022, we made principal payments of&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively, which have been reflected as a financing activity on our Statement of Cash Flows.&lt;/span&gt;&lt;/p&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:DebtInstrumentDecreaseForgiveness
      contextRef="C_af1abd01-f093-411d-bbb8-3fedcc55112c"
      decimals="INF"
      id="F_eba5226d-3275-4f71-a09e-1df49b1a0515"
      unitRef="U_USD">20000000</us-gaap:DebtInstrumentDecreaseForgiveness>
    <us-gaap:DebtInstrumentDecreaseForgiveness
      contextRef="C_c4e567e9-72ad-4ae8-b652-4a1f9694428a"
      decimals="INF"
      id="F_878c2075-c66e-4293-9198-a81946ee3922"
      unitRef="U_USD">10000000</us-gaap:DebtInstrumentDecreaseForgiveness>
    <us-gaap:DebtInstrumentMaturityDate
      contextRef="C_12854efa-a02d-4d65-b817-b5e45dc6252b"
      id="F_8fd57d9c-3b8e-40b8-a01c-30ac3bc986cc">2024-06-30</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="C_78af73f2-e512-48ad-a168-e1a08d677b0b"
      decimals="INF"
      id="F_5d06b6c2-0fdb-4464-8d7c-5144962d3113"
      unitRef="U_pure">0.004</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_7093543c-c276-4e9c-89e1-84bdbfc16b9d"
      decimals="INF"
      id="F_bd62c739-f0b4-4e89-8701-5377962ac015"
      unitRef="U_pure">0.015</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="C_b86efaab-ab97-4ab9-9b25-9a1aa5b52a98"
      decimals="-5"
      id="F_c423c02e-670b-425f-854e-be10441e0298"
      unitRef="U_USD">1500000</us-gaap:LettersOfCreditOutstandingAmount>
    <gifi:SuretyBonds
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_9df472d4-2aaa-4b1e-bbe9-64525986184d"
      unitRef="U_USD">52500000</gifi:SuretyBonds>
    <gifi:SuretyContractsOfInsuranceCoverages
      contextRef="C_ebe93e40-798e-4e52-a220-9e5adb2036a6"
      decimals="-5"
      id="F_77cadf49-e57b-4f4d-a4dc-785369f6823d"
      unitRef="U_USD">45600000</gifi:SuretyContractsOfInsuranceCoverages>
    <gifi:SuretyContractsOfInsuranceCoverages
      contextRef="C_4eeb4eff-4542-494a-b131-7ceacf00ca5c"
      decimals="-5"
      id="F_52b4c877-23c2-45b4-bd46-d05796071991"
      unitRef="U_USD">6900000</gifi:SuretyContractsOfInsuranceCoverages>
    <us-gaap:DebtInstrumentIssuedPrincipal
      contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58"
      decimals="-5"
      id="F_aaae0871-64a5-4c5c-85be-1d4bd9e6524c"
      unitRef="U_USD">20000000</us-gaap:DebtInstrumentIssuedPrincipal>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_03079662-2439-4b58-8a31-640aaece2927"
      decimals="3"
      id="F_ed5ce5bb-8b79-4e82-8c99-98ef0bc716c9"
      unitRef="U_pure">0.03</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateTerms
      contextRef="C_7f0465c4-4ee4-4598-8765-2eff635d681a"
      id="F_d46035b4-a3cd-42d3-90c4-c601e807470d">principal and interest payable in 15 equal annual installments</us-gaap:DebtInstrumentInterestRateTerms>
    <us-gaap:DebtInstrumentFrequencyOfPeriodicPayment
      contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58"
      id="F_d6c09994-b7b5-45e4-ab86-8f5224a4deaf">15</us-gaap:DebtInstrumentFrequencyOfPeriodicPayment>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58"
      decimals="-5"
      id="F_22c6f9aa-d062-4b93-9a47-90208835d56a"
      unitRef="U_USD">1700000</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentMaturityDateRangeStart1
      contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58"
      id="F_07dde8e9-e397-4b66-8229-64e38b9c1675">2024-12-31</us-gaap:DebtInstrumentMaturityDateRangeStart1>
    <us-gaap:DebtInstrumentMaturityDateRangeEnd1
      contextRef="C_4515a7de-df59-4645-afda-0a8cc8127a58"
      id="F_12a69dda-ed43-45f3-9a8f-5859a120d873">2038-12-31</us-gaap:DebtInstrumentMaturityDateRangeEnd1>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_b0e44dd7-dcf2-4c65-9b3e-29a941b4ba06">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Future annual principal maturities under the Note Agreement are as follows (in thousands): &lt;/span&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:81.156%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.92%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:14.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Principal&lt;br/&gt;Maturities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,075&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,108&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,141&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,175&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,210&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;14,291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total maturities &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1), (2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;20,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;At December 31, 2023, the estimated present value of the Note Agreement amount was $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million based on an estimated market rate of interest.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Due to the forbearance of interest until January 1, 2024, the effective rate on the Note Agreement is &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;% per annum. Accordingly, we accrued interest expense of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million during 2023 associated with the difference between the effective interest rate and stated interest rate on the Note Agreement.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="-3"
      id="F_4aed9120-b647-473d-8b0c-917908b8725a"
      unitRef="U_USD">1075000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="-3"
      id="F_d94ff627-3275-4827-b649-eefd2df0625c"
      unitRef="U_USD">1108000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="-3"
      id="F_2b728a2f-e3de-42a9-bfd0-1d0870006d4f"
      unitRef="U_USD">1141000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="-3"
      id="F_06a3ffd4-3c79-4637-ab31-12f271d58618"
      unitRef="U_USD">1175000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="-3"
      id="F_e25db79a-ad20-4908-94a9-594493d942ba"
      unitRef="U_USD">1210000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="-3"
      id="F_db9ce216-fdf9-44aa-a481-e771f041890c"
      unitRef="U_USD">14291000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive>
    <us-gaap:LongTermDebt
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="-3"
      id="F_65aeabaf-1112-4858-a4bf-8a826a7337b3"
      unitRef="U_USD">20000000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="-5"
      id="F_286075fb-86c2-4a33-91ea-e309faea5863"
      unitRef="U_USD">12700000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_7bafb9d0-3eb9-45b1-9720-7f921b6f6f44"
      decimals="3"
      id="F_184303c4-4610-4b14-8326-cd5d373a1a4e"
      unitRef="U_pure">0.029</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:IncreaseDecreaseInInterestPayableNet
      contextRef="C_10d68f7a-a90d-431b-9e2a-da2598783742"
      decimals="-5"
      id="F_b6b35bf7-8288-480c-bde3-d11b91dbc425"
      unitRef="U_USD">100000</us-gaap:IncreaseDecreaseInInterestPayableNet>
    <gifi:PercentageOfProvisionRequiredFromProceedsReceived
      contextRef="C_7f0465c4-4ee4-4598-8765-2eff635d681a"
      decimals="2"
      id="F_863798e1-e261-456b-8435-9b6482fb3856"
      unitRef="U_pure">0.50</gifi:PercentageOfProvisionRequiredFromProceedsReceived>
    <gifi:ProceedsFromSaleOfRealEstateRequiredToMakeProvision
      contextRef="C_7f0465c4-4ee4-4598-8765-2eff635d681a"
      decimals="-5"
      id="F_f2263a8f-ec54-4c96-ab1d-f3e0b518219c"
      unitRef="U_USD">8000000</gifi:ProceedsFromSaleOfRealEstateRequiredToMakeProvision>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="C_ebbc6533-3f2b-4249-918e-203985dcd36e"
      decimals="-5"
      id="F_946e1178-9c78-45e1-b094-3159f88f345a"
      unitRef="U_USD">2400000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentPaymentTerms
      contextRef="C_4900e066-caa9-4f68-828d-0333a646f71e"
      id="F_75b31c8c-ed13-4400-a96b-de353a24b572"> payable in ten equal monthly installments through March 2023</us-gaap:DebtInstrumentPaymentTerms>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_ebbc6533-3f2b-4249-918e-203985dcd36e"
      decimals="3"
      id="F_91e8c90a-c8fb-4667-ad05-dbc39ccdbe3b"
      unitRef="U_pure">0.043</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="C_edc61289-8f24-4a94-b7bc-9f0f39c7452c"
      decimals="-5"
      id="F_a393ed8d-3786-4c96-8426-aded7e1a8511"
      unitRef="U_USD">500000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentPaymentTerms
      contextRef="C_8b8ad109-c04c-4dbc-a968-90a5cd94c64c"
      id="F_4a03dbc2-b534-47cb-8322-ac335f73e37c">payable in eight equal monthly installments through August 2023</us-gaap:DebtInstrumentPaymentTerms>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_edc61289-8f24-4a94-b7bc-9f0f39c7452c"
      decimals="3"
      id="F_56b0b7c8-471a-457f-8334-8db56a42d1ed"
      unitRef="U_pure">0.066</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentAnnualPrincipalPayment
      contextRef="C_a9c3a5c7-b40e-4bc7-8b0c-5ea9f856437f"
      decimals="-5"
      id="F_f2e94176-c4ed-4780-a51c-3f2b07fa17e4"
      unitRef="U_USD">1300000</us-gaap:DebtInstrumentAnnualPrincipalPayment>
    <us-gaap:DebtInstrumentAnnualPrincipalPayment
      contextRef="C_e05504c2-0ed9-4fe1-9d89-16d723ffed13"
      decimals="-5"
      id="F_ac4d88c3-2507-475e-86a4-5026d3fed6b2"
      unitRef="U_USD">1700000</us-gaap:DebtInstrumentAnnualPrincipalPayment>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_bf8b933b-2057-4d02-b20e-3d21b8ef4bfe">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;5. INCOME TAXES&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income Tax (Expense) Benefit&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A reconciliation of the U.S. federal statutory tax rate to our income tax (expense) benefit for 2023 and 2022, is as follows (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:66.993%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.402000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.402000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;U.S. statutory rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Increase (decrease) resulting from:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Permanent differences&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5.1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;State income taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5.7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Discrete items&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Vesting of common stock&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Change in valuation allowance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;19.4&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23.1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Return to provision and other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.8&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Income tax (expense) benefit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Significant components of our income tax (expense) benefit for 2023 and 2022, were as follows (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:66.993%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Federal&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;State&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Deferred&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Federal&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,933&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;556&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;State&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;166&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Valuation allowance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,868&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;745&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total deferred&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;41&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Income tax (expense) benefit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;41&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Deferred Taxes&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Significant components of our deferred tax assets and liabilities at December 31, 2023 and 2022, were as follows (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:66.993%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Deferred tax assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Leases&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;144&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;221&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Employee benefits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,499&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,465&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Accrued losses on uncompleted contracts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;77&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,076&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Stock based compensation expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;373&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;351&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Debt interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;516&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;-&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Federal net operating losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;28,413&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;22,444&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;State net operating losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,407&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,493&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;R&amp;amp;D and other tax credits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,037&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,013&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;242&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;481&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total deferred tax assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;35,708&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;31,544&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Deferred tax liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;564&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,051&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Prepaid insurance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;280&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;497&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total deferred tax liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;844&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Net deferred tax assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;34,864&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;29,996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Valuation allowance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;34,927&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Net deferred taxes &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;63&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;104&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amounts are included in other noncurrent liabilities on our Balance Sheet&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;At December 31, 2023 and 2022, we had total DTAs of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;35.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;31.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively (including U.S. federal net operating losses (&#x201c;NOL(s)&#x201d;) DTAs of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;28.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;22.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively). On a periodic and ongoing basis, we evaluate our DTAs (including our NOL DTAs) and assess the appropriateness of our valuation allowance(s) (&#x201c;VA(s)&#x201d;). In assessing the need for a VA, we consider both positive and negative evidence related to the likelihood of realizing our DTAs. If, based upon the available evidence, our assessment indicates that it is more likely than not that some or all of the DTAs will not be realized, we record a VA. Our assessments include, among other things, the amount of taxable temporary differences that will result in future taxable income, the value and quality of our backlog, evaluations of existing and anticipated market conditions, analysis of recent and historical operating results (including cumulative losses over multiple periods) and projections of future results and strategic plans, as well as asset expiration dates. As a result of our assessment and due to cumulative losses for the three years ended December 31, 2023, we believe the negative evidence outweighs the positive evidence with respect to our ability to realize our DTAs, and accordingly, at December 31, 2023 and 2022, we had VAs of &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;34.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively, offsetting our total DTAs.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;At December 31, 2023, we had gross U.S. federal NOL carryforwards (excluding VAs) of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;135.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, of which $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;42.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million will expire in&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; 2037&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; with the &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;remaining U.S. federal NOL carryforwards eligible to be carried forward indefinitely, subject to an &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;80&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% limitation on taxable income in each year.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; At December 31, 2023, we had gross state NOL carryforwards (excluding VAs) of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;45.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, which will expire fro&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;m 2035 through 2041.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Uncertain Tax Positions&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Reserves for uncertain tax positions are recognized when we consider it more likely than not that additional tax will be due in excess of amounts reflected in our income tax returns, irrespective of whether or not we have received tax assessments. Interest and penalties on uncertain tax positions are recorded within income tax expense. At December 31, 2023 and 2022, we had no material reserves for uncertain tax positions. Tax returns subject to examination by the U.S. Internal Revenue Service are open for years after &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;2019.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_c184c080-98a2-4864-97b7-45958eb6946a">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A reconciliation of the U.S. federal statutory tax rate to our income tax (expense) benefit for 2023 and 2022, is as follows (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:66.993%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.402000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.402000000000001%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;U.S. statutory rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;21.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Increase (decrease) resulting from:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Permanent differences&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5.1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;State income taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5.7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Discrete items&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Vesting of common stock&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Change in valuation allowance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;19.4&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23.1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Return to provision and other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.8&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Income tax (expense) benefit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="3"
      id="F_7a2918a6-07f3-484d-9736-8f9980d67635"
      unitRef="U_pure">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="INF"
      id="F_b08bf1c7-9905-4499-a563-8bbbe41824fe"
      unitRef="U_pure">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <gifi:EffectiveIncomeTaxReconciliationPermanentDifferencesPercent
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="3"
      id="F_e4666dc4-3dc0-4fb2-af6d-c91f8345f869"
      unitRef="U_pure">-0.01</gifi:EffectiveIncomeTaxReconciliationPermanentDifferencesPercent>
    <gifi:EffectiveIncomeTaxReconciliationPermanentDifferencesPercent
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="3"
      id="F_f61702ee-75c7-4743-a684-93243f7f0291"
      unitRef="U_pure">-0.051</gifi:EffectiveIncomeTaxReconciliationPermanentDifferencesPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="3"
      id="F_c9251d90-06a2-414e-9341-ba8418009f79"
      unitRef="U_pure">-0.003</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="3"
      id="F_8d8390cf-f1bc-4d42-ace9-603075d0e517"
      unitRef="U_pure">0.057</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="3"
      id="F_08450c01-231c-4dff-9da8-977c60bde621"
      unitRef="U_pure">-0.002</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="3"
      id="F_e34f8a9e-1a9b-49ca-8be7-2ffb269a6ceb"
      unitRef="U_pure">-0.010</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="3"
      id="F_c3ef0e35-7494-450d-8437-170133f8be25"
      unitRef="U_pure">-0.194</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="3"
      id="F_d46402ae-537b-42f9-9111-bd318f075458"
      unitRef="U_pure">-0.231</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <gifi:EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="3"
      id="F_7b76e948-5f91-48a2-8aa5-ac8083a8c770"
      unitRef="U_pure">0.001</gifi:EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent>
    <gifi:EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="3"
      id="F_f1df5efb-8502-4042-8ab4-3ee55ab5f077"
      unitRef="U_pure">0.018</gifi:EffectiveIncomeTaxReconciliationReturnToProvisionAndOtherPercent>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="3"
      id="F_afc6561c-e8ef-448c-915b-c8424a13f6a1"
      unitRef="U_pure">0.002</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="3"
      id="F_5773cbcb-4963-4a6c-aaa3-c460bd0367e0"
      unitRef="U_pure">-0.007</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_98ee981b-b480-4bda-9a26-b27700396057">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Significant components of our income tax (expense) benefit for 2023 and 2022, were as follows (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:8.5pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:66.993%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Federal&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;State&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Deferred&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Federal&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,933&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;556&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;State&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;166&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Valuation allowance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,868&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;745&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total deferred&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;41&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Income tax (expense) benefit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;41&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;23&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_17d23a1b-7359-4bbc-9889-8d4483d2fb4f"
      unitRef="U_USD">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_0e020d33-623a-4673-8af9-2bf25b66a1de"
      unitRef="U_USD">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_7a1aae47-5dd5-4713-9772-91ebf2956f95"
      unitRef="U_USD">0</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_ce9944da-9fd9-46d0-86e1-a7dc8d9bdea2"
      unitRef="U_USD">0</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_41706663-3713-4d11-b054-630fcde0084d"
      unitRef="U_USD">0</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_f1d5e73c-4e44-4fc1-8698-5f9d3cbfa3e5"
      unitRef="U_USD">0</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_bc2fda4a-7964-43ea-a029-ed306b08761d"
      unitRef="U_USD">-4933000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_44a3b243-73e8-4173-91fd-a2fc0ac8037a"
      unitRef="U_USD">-556000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_8eb6c65a-f0fb-40b1-af8c-82924ae6bf7b"
      unitRef="U_USD">24000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_63aeecf4-baf1-4068-b870-dff29d1184c1"
      unitRef="U_USD">-166000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_09e90e63-9fc8-4629-aa90-e5c48f49f0ec"
      unitRef="U_USD">-4868000</us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount>
    <us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_78d6d0cb-0d68-47cb-b988-47680b769059"
      unitRef="U_USD">-745000</us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_fb444c48-ef8f-4ea9-80aa-5e1f609a9bc4"
      unitRef="U_USD">41000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_3cd3ce01-021f-453b-910c-1742b2d2d805"
      unitRef="U_USD">-23000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_7e414aa4-c701-4ead-b787-b53baf2b64b2"
      unitRef="U_USD">-41000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_657154ad-3d7f-4fdf-bb8b-43c741bbdae2"
      unitRef="U_USD">23000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_0d9067af-7292-428f-b6e0-c292eac317a6">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Significant components of our deferred tax assets and liabilities at December 31, 2023 and 2022, were as follows (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:66.993%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.58%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:12.923%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Deferred tax assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Leases&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;144&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;221&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Employee benefits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,499&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,465&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Accrued losses on uncompleted contracts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;77&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,076&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Stock based compensation expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;373&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;351&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Debt interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;516&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;-&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Federal net operating losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;28,413&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;22,444&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;State net operating losses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,407&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,493&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;R&amp;amp;D and other tax credits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,037&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,013&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;242&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;481&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total deferred tax assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;35,708&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;31,544&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Deferred tax liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Depreciation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;564&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,051&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Prepaid insurance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;280&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;497&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:20pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total deferred tax liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;844&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Net deferred tax assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;34,864&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;29,996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Valuation allowance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;34,927&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Net deferred taxes &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;63&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;104&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Amounts are included in other noncurrent liabilities on our Balance Sheet&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <gifi:DeferredTaxAssetsLeases
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_6360aee6-c4a5-4936-9ba9-706854eaeece"
      unitRef="U_USD">144000</gifi:DeferredTaxAssetsLeases>
    <gifi:DeferredTaxAssetsLeases
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_73d45452-ccb7-413a-b6fe-f7a9f8883553"
      unitRef="U_USD">221000</gifi:DeferredTaxAssetsLeases>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_e33099a0-5f60-46cb-a484-b9ae0e14b432"
      unitRef="U_USD">1499000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_3e14812e-15aa-47d6-8bef-43795902c2e9"
      unitRef="U_USD">1465000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <gifi:DeferredTaxAssetsAccruedLossesOnUncompletedContracts
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_8a04d6d8-85bf-442e-b8bc-0bbc2bc0600c"
      unitRef="U_USD">77000</gifi:DeferredTaxAssetsAccruedLossesOnUncompletedContracts>
    <gifi:DeferredTaxAssetsAccruedLossesOnUncompletedContracts
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_9ca7ff5f-bbfd-4846-8df8-430ee8381054"
      unitRef="U_USD">2076000</gifi:DeferredTaxAssetsAccruedLossesOnUncompletedContracts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_7dfffb33-02bc-489c-aff3-929de74f91e2"
      unitRef="U_USD">373000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_ac108d69-2112-410c-ab3b-843bd5a4840f"
      unitRef="U_USD">351000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <gifi:DeferredTaxAssetsDebtInterest
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_e003fd12-1a2e-4eb1-ae6a-26b409673c75"
      unitRef="U_USD">516000</gifi:DeferredTaxAssetsDebtInterest>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_2ae8cff6-2fea-4f26-9f06-820939eeaa8c"
      unitRef="U_USD">28413000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_e9edf263-b4a6-4acf-8ce0-be54a5b1759e"
      unitRef="U_USD">22444000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_e04437dd-8563-4be8-94bd-a58ba90e5b1d"
      unitRef="U_USD">3407000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_faacd5c5-ef77-4acc-a4ba-db263b4cf923"
      unitRef="U_USD">3493000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_b756b173-f376-4d5a-addb-60f6111bed25"
      unitRef="U_USD">1037000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_38ad666a-7681-431d-bba4-da5f3a3ba6d1"
      unitRef="U_USD">1013000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_afcd1b0a-48b2-4a4e-b736-2e212574bc23"
      unitRef="U_USD">242000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_5c84cf5c-cb53-4cc2-a2d4-3a883851660b"
      unitRef="U_USD">481000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_6e15d788-7a10-4850-8155-9572be4d0d5f"
      unitRef="U_USD">35708000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_0d43d09b-6071-4166-bdf2-b8c3e441fda9"
      unitRef="U_USD">31544000</us-gaap:DeferredTaxAssetsGross>
    <gifi:DeferredTaxLiabilitiesDepreciation
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_664b3c85-7449-4c9d-bb0c-29a166d6a42a"
      unitRef="U_USD">564000</gifi:DeferredTaxLiabilitiesDepreciation>
    <gifi:DeferredTaxLiabilitiesDepreciation
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_f6569fd5-9226-49b2-b3b9-d6c62c60497d"
      unitRef="U_USD">1051000</gifi:DeferredTaxLiabilitiesDepreciation>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_9457eef5-0513-4fb4-a865-0fb52359ec78"
      unitRef="U_USD">280000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_3032e63d-4089-424a-9e05-47faa86c6174"
      unitRef="U_USD">497000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_974812f9-868f-4842-bb9a-c837c4161c0a"
      unitRef="U_USD">844000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_7722692a-1eb1-4bd2-a7b6-69ff22dd0090"
      unitRef="U_USD">1548000</us-gaap:DeferredIncomeTaxLiabilities>
    <gifi:DeferredTaxAssetsLiabilitiesGross
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_8260e11e-2adf-42ca-9ba5-ac9f3a611e1e"
      unitRef="U_USD">34864000</gifi:DeferredTaxAssetsLiabilitiesGross>
    <gifi:DeferredTaxAssetsLiabilitiesGross
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_a01c8d44-ab18-4b3b-80be-e22c2545e140"
      unitRef="U_USD">29996000</gifi:DeferredTaxAssetsLiabilitiesGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_b68640d1-ed3d-4068-8652-63ebb297f3fd"
      unitRef="U_USD">34927000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_bcfae779-4af7-41ee-b752-963c62b93eba"
      unitRef="U_USD">30100000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxLiabilities
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-3"
      id="F_0a37488d-9e1c-4ed2-b70c-06662794fe5a"
      unitRef="U_USD">63000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-3"
      id="F_d5ab8a3a-7ea2-4027-b00d-b421dddb1ff2"
      unitRef="U_USD">104000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_a3b28f81-abdc-42ad-9115-7c0b92c6ab06"
      unitRef="U_USD">35700000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-5"
      id="F_c29856fb-bb90-4db5-982f-c099eb2dbb54"
      unitRef="U_USD">31500000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_edd887be-841d-4a09-81a4-eeae3d0f1fdb"
      unitRef="U_USD">28400000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-5"
      id="F_8b254b1e-721e-4ae7-95dc-ef7f604834f2"
      unitRef="U_USD">22400000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="-5"
      id="F_38084a0e-e61d-482c-bc0f-95c9d149e42b"
      unitRef="U_USD">34900000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="C_0660e6c0-ccc8-45db-8991-4be7ccd8e45d"
      decimals="-5"
      id="F_93d0fb63-dbeb-4fef-b056-f386b7d99be1"
      unitRef="U_USD">30100000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:OperatingLossCarryforwards
      contextRef="C_da17b24e-8d51-45f0-a249-36d148fe59c1"
      decimals="-5"
      id="F_229f315b-5780-4614-a9ce-2a1d90178c36"
      unitRef="U_USD">135300000</us-gaap:OperatingLossCarryforwards>
    <gifi:OperatingLossCarryforwardsSubjectToExpire
      contextRef="C_da17b24e-8d51-45f0-a249-36d148fe59c1"
      decimals="-5"
      id="F_3206d0b2-c7b0-4b72-b2c3-18625786ebf1"
      unitRef="U_USD">42300000</gifi:OperatingLossCarryforwardsSubjectToExpire>
    <us-gaap:OperatingLossCarryforwardsLimitationsOnUse
      contextRef="C_340658b7-c5f6-4f9e-baf8-ee3628199f1b"
      id="F_d65c9e29-b45f-4afd-9738-2715d20f67cd">remaining U.S. federal NOL carryforwards eligible to be carried forward indefinitely, subject to an 80% limitation on taxable income in each year.</us-gaap:OperatingLossCarryforwardsLimitationsOnUse>
    <gifi:OperatingLossCarryforwardsLimitationRateOnTaxableIncome
      contextRef="C_340658b7-c5f6-4f9e-baf8-ee3628199f1b"
      decimals="2"
      id="F_b03cb88e-409f-475a-baf6-0c100a515a8e"
      unitRef="U_pure">0.80</gifi:OperatingLossCarryforwardsLimitationRateOnTaxableIncome>
    <us-gaap:OperatingLossCarryforwards
      contextRef="C_6a3b135b-7cee-4004-85ca-f908d2888183"
      decimals="-5"
      id="F_885ef457-10a8-49b5-b83f-2da0de3b2067"
      unitRef="U_USD">45200000</us-gaap:OperatingLossCarryforwards>
    <gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_d84b09b5-5eb9-4029-98e1-1ddd8fff4f58">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;6. RETIREMENT AND LONG-TERM INCENTIVE PLANS&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Defined Contribution Plan&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We sponsor a defined contribution plan for eligible employees that is qualified under Section 401(k) of the Internal Revenue Code, which includes voluntary employee pre-tax contributions and Company-matching contributions, with potential additional discretionary contributions determined by our Board of Directors (&#x201c;Board&#x201d;). During 2023 and 2022, we contributed &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively, to the plan.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Long-Term Incentive Plans&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Under our long-term incentive plans (&#x201c;Incentive Plans&#x201d;), the Compensation Committee of our Board may grant cash-based and equity-based awards to eligible employees and non-employee directors, including restricted stock unit (&#x201c;RSU&#x201d;) awards (both time-based and performance-based), stock option awards and cash-based performance awards. The Compensation Committee determines the amount of each award, as well as the terms, conditions, performance measures and other provisions of the award. Under our Incentive Plans, the maximum number of shares that may be granted to any one officer or employee during any single calendar year is &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;300,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. At December 31, 2023, we had &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,146,746&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; authorized shares available for future issuance under our Incentive Plans.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;RSU Awards &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;An RSU represents the right to receive one share of our common stock upon vesting, or the equivalent cash value on the vesting date if the award is cash-settled. RSUs are subject to transfer restrictions, forfeiture provisions and other terms and conditions of the Incentive Plans and applicable award agreements. Forfeitures are recognized as they occur.&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Time-based RSU Awards&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;&#x2013; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Outstanding time-based RSU awards to our non-employee directors and employees have a one-year or &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;three-year&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;, respectively, graded vesting period. The fair value for these awards was determined based upon the closing price of our stock on the date of grant applied to the total number of units granted. The fair value is expensed over the applicable vesting period on a straight-line basis.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;&#x2022;&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Performance-based RSU Awards&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; Outstanding performance-based RSU awards to our employees have a &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;three-year&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; graded vesting period. These awards provide that the number of shares of common stock ultimately issued will be between &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;200&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;% of the target award based on the achievement of performance targets attributable to the year in which the awards are made, up to the maximum per person limit, with any excess shares earned payable in cash. The fair value for these awards was determined based upon the closing price of our stock on the date of grant applied to the total number of units anticipated to be granted based on the performance targets achieved. This fair value is expensed over the applicable vesting period using the graded vesting method. As a result of the performance targets achieved for 2021, one award recipient&#x2019;s performance-based RSU awards were subject to partial cash-settlement (&#x201c;Cash-Settled RSUs&#x201d;) as described above. Accordingly, we account for this portion of the awards as liability-classified awards, with changes in the fair value of the awards reflected within general and administrative expense on our Statement of Operations over the vesting period. Compensation expense for our Cash-Settled RSUs was not significant for 2023 and was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for 2022. During 2023 and 2022, $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, was paid related to our Cash-Settled RSUs.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A summary of activity for our RSU awards (excluding Cash-Settled RSUs) for 2023 and 2022 is as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:30.586%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:14.163%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.66%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.703%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:14.163%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.66%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.703%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Number&lt;br/&gt;of Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Grant-Date&lt;br/&gt;Fair Value&lt;br/&gt;Per Share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Number&lt;br/&gt;of Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Grant-Date&lt;br/&gt;Fair Value&lt;br/&gt;Per Share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;RSUs, beginning of period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;838,267&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;842,558&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.47&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;550,980&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3.47&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;463,600&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Vested&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;443,106&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.21&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;403,559&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.46&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Forfeited&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;64,332&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;RSUs, end of period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;946,141&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3.89&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;838,267&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Compensation expense for our RSU awards was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for 2023 and 2022, respectively, and is included in general and administrative expense and cost of revenue, as applicable, on our Statement of Operations. At December 31, 2023, we had &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; of unrecognized compensation expense related to our RSU awards. This cost is expected to be recognized over a weighted-average period of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;1.5&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; y&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;ears. The total fair value of RSU awards granted during 2023 and 2022 was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively, and the total fair value of RSU awards that vested during 2023 and 2022 was &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively. The income tax benefit (expense) associated with our share-based compensation arrangements was not significant for 2023 or 2022.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Stock Option Awards and Cash-based Performance Awards &#x2013; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;At December 31, 2023, we had &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;no&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; outstanding stock option awards or cash-based performance awards and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;no&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; such awards were made during 2023 or 2022.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</gifi:RetirementPlanAndStockIncentivePlansDisclosureTextBlock>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-5"
      id="F_7c26b8c2-8e10-49ec-8efa-f9b1b99bc951"
      unitRef="U_USD">700000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-5"
      id="F_4132c115-eb84-40af-b33f-00c2524ac20d"
      unitRef="U_USD">700000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee
      contextRef="C_76c0035d-6bbe-4dca-ad23-c0e017c4af95"
      decimals="INF"
      id="F_a903da32-cf09-47e6-bc95-908c02c104d9"
      unitRef="U_shares">300000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="INF"
      id="F_6092153d-23bf-4f1b-b6fc-9fb221f68a92"
      unitRef="U_shares">1146746</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="C_d342c752-187b-4186-b7e8-0cdc98699744"
      id="F_fb4b2fc8-3de1-4fa7-abb0-8641c407e7cc">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="C_8ca68023-b032-418a-be42-f11f835f0de2"
      id="F_1c7e9128-ad9f-4020-9064-17880557f1e2">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <gifi:NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets
      contextRef="C_0269de45-8980-4198-802f-0b5468843a36"
      decimals="2"
      id="F_376afac2-db57-4afb-956c-b2bba3a99939"
      unitRef="U_pure">0</gifi:NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets>
    <gifi:NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets
      contextRef="C_09185d95-707c-4c74-9ff3-bc5922f3e781"
      decimals="2"
      id="F_fca1eb15-2401-41fe-a26d-43cbc1123c06"
      unitRef="U_pure">2</gifi:NumberOfSharesOfCommonStockUltimatelyIssuedAsPercentOfTargetAwardBasedOnAchievementOfPerformanceTargets>
    <us-gaap:ShareBasedCompensation
      contextRef="C_24b7e990-71af-44ce-907a-00c3c690b79e"
      decimals="-5"
      id="F_db4709f0-91c1-46be-a5fe-1d33a8c1cce5"
      unitRef="U_USD">100000</us-gaap:ShareBasedCompensation>
    <us-gaap:EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards
      contextRef="C_fa386629-c7ec-4389-b0e0-17941db057e4"
      decimals="-5"
      id="F_a24548aa-b895-461a-8cf7-bc44acd64733"
      unitRef="U_USD">100000</us-gaap:EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards>
    <us-gaap:EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards
      contextRef="C_24b7e990-71af-44ce-907a-00c3c690b79e"
      decimals="-5"
      id="F_427ff95a-96a0-4466-ac50-3c7307bfbc10"
      unitRef="U_USD">100000</us-gaap:EmployeeServiceShareBasedCompensationCashFlowEffectCashUsedToSettleAwards>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_3b0f28f9-7e4a-4a25-917a-4dbe08994a21">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;A summary of activity for our RSU awards (excluding Cash-Settled RSUs) for 2023 and 2022 is as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:30.586%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:14.163%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.66%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.703%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.18%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:14.163%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.66%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:13.703%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Number&lt;br/&gt;of Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Grant-Date&lt;br/&gt;Fair Value&lt;br/&gt;Per Share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Number&lt;br/&gt;of Shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Grant-Date&lt;br/&gt;Fair Value&lt;br/&gt;Per Share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;RSUs, beginning of period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;838,267&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;842,558&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.47&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;550,980&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3.47&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;463,600&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.24&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Vested&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;443,106&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.21&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;403,559&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.46&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Forfeited&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;64,332&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;RSUs, end of period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;946,141&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3.89&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;838,267&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="C_42223cfa-5545-4029-95db-8b9c0d2f26b0"
      decimals="INF"
      id="F_061851e6-c73c-445b-a2f5-a75aac8e4860"
      unitRef="U_shares">838267</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="C_42223cfa-5545-4029-95db-8b9c0d2f26b0"
      decimals="2"
      id="F_d6bc2853-a5cd-43d2-ab89-de06d846e262"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">4.34</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="C_06f13167-5eed-4387-a08a-8dff424bad6e"
      decimals="INF"
      id="F_69235388-5aa1-4c15-8a49-b6e4ccc937bd"
      unitRef="U_shares">842558</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="C_06f13167-5eed-4387-a08a-8dff424bad6e"
      decimals="2"
      id="F_16948afd-3084-4051-b72d-e9a1f2e90d7f"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">4.47</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100"
      decimals="INF"
      id="F_a7a41818-376f-41f2-9345-ebe2fdc95118"
      unitRef="U_shares">550980</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100"
      decimals="2"
      id="F_15ae4864-7dc3-494b-8707-b8446a60e539"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">3.47</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="INF"
      id="F_54fc9891-4b7b-4fc7-a65b-cbe1028183b5"
      unitRef="U_shares">463600</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="2"
      id="F_c90acc26-1af7-446b-b107-a10ad6d6da0e"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">4.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100"
      decimals="INF"
      id="F_cbc21edb-94c9-4493-ae90-430b9a3ed124"
      unitRef="U_shares">443106</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100"
      decimals="2"
      id="F_8bffc388-df7d-416a-806f-16fb196d0979"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">4.21</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="INF"
      id="F_e8c197b5-13de-4fb8-be65-4dbcc8257869"
      unitRef="U_shares">403559</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="2"
      id="F_0355c45e-6f2c-48b7-9a62-02bc12ff0acf"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">4.46</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="INF"
      id="F_11eab261-bc70-4520-83bc-c3b61dc38662"
      unitRef="U_shares">64332</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="2"
      id="F_91788be3-5d32-4131-a4cc-e01b42bbea9d"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">4.49</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="C_9139f63d-9057-42c4-9b2f-a427e8f6dc0a"
      decimals="INF"
      id="F_1bd95442-876a-4f76-a750-714d1a88669c"
      unitRef="U_shares">946141</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="C_9139f63d-9057-42c4-9b2f-a427e8f6dc0a"
      decimals="2"
      id="F_7e52910b-61f0-496d-8a78-2bf96fa9818d"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">3.89</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="C_42223cfa-5545-4029-95db-8b9c0d2f26b0"
      decimals="INF"
      id="F_5ff3be4e-7a35-4b81-bc4e-98ebf8061203"
      unitRef="U_shares">838267</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="C_42223cfa-5545-4029-95db-8b9c0d2f26b0"
      decimals="2"
      id="F_b2b3db93-2f19-4716-b2ca-30d0c221ff8c"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">4.34</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensation
      contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100"
      decimals="-5"
      id="F_0590899b-81bc-415f-b4dc-dcb59955bbcd"
      unitRef="U_USD">2000000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="-5"
      id="F_fcd415b9-d1cb-41ec-827d-9bf93565abd8"
      unitRef="U_USD">2300000</us-gaap:ShareBasedCompensation>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="C_9139f63d-9057-42c4-9b2f-a427e8f6dc0a"
      decimals="-5"
      id="F_0093d5be-b2d7-4f6b-be0d-a69ea191f5c5"
      unitRef="U_USD">1900000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_65d851c9-109e-4cad-ad0b-88224a9b4d90">P1Y6M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100"
      decimals="-5"
      id="F_bb54c884-45aa-492f-9830-b671f898c90f"
      unitRef="U_USD">1900000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="-5"
      id="F_414aebed-926e-40b2-a65f-112261557096"
      unitRef="U_USD">2000000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="C_e0a71b99-a83e-4c0e-ab2e-4ebfe6083100"
      decimals="-5"
      id="F_7fa5e497-830c-4287-a7c6-2b219c228ac8"
      unitRef="U_USD">1600000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="C_0c59df09-712a-47cb-b2d9-678570fe3989"
      decimals="-5"
      id="F_476b71cd-ea2b-4db9-81f1-9a9655b01813"
      unitRef="U_USD">1600000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="C_47994a14-accc-418c-92d7-381b622394d5"
      decimals="INF"
      id="F_be509668-3d07-4e59-a40b-ce95789a8b17"
      unitRef="U_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="INF"
      id="F_1d2cac95-7de3-4c4c-99ae-16cad259ec82"
      unitRef="U_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="INF"
      id="F_9121d642-8596-4a37-9858-0f0fa7bfc8f6"
      unitRef="U_shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_b17b21d4-a2a3-40ef-9f8f-a26648da091c">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;7. COMMITMENTS AND CONTINGENCIES&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Routine Legal Proceedings&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.173%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We are subject to various routine legal proceedings in the normal conduct of our business, primarily involving commercial disputes and claims, workers&#x2019; compensation claims, and claims for personal injury under general maritime laws of the U.S. and the Jones Act. While the outcome of these legal proceedings cannot be predicted with certainty, we believe that the outcome of any such proceedings, even if determined adversely, would not have a material adverse effect on our financial position, results of operations or liquidity.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Resolution of MPSV Litigation&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;On March 19, 2018, our subsidiary, Gulf Island Shipyards, LLC (&#x201c;GIS&#x201d;), received termination notices from its customer, Hornbeck Offshore Services, LLC (&#x201c;Hornbeck&#x201d;), of the contracts for the construction of &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;two&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; MPSVs. GIS disputed the purported terminations and disagreed with Hornbeck&#x2019;s reasons for such terminations. In connection with such purported terminations, Hornbeck also made claims against the performance bonds issued by Zurich in connection with the construction of the MPSVs, for which the face amount of the bonds totaled $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;50.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million (&#x201c;Performance Bonds&#x201d;). On October 2, 2018, GIS filed a lawsuit against Hornbeck to enforce its rights and remedies under the applicable construction contracts for the two MPSVs. The lawsuit was filed in the Twenty-Second Judicial District Court for the Parish of St. Tammany, State of Louisiana and was styled Gulf Island Shipyards, LLC v. Hornbeck Offshore Services, LLC, bearing docket number 2018-14861 (&#x201c;MPSV Litigation&#x201d;). Hornbeck subsequently asserted counterclaims against GIS and Zurich seeking damages.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;On October 4, 2023, the MPSV Litigation was dismissed in full with prejudice at the request of the parties after the parties reached an agreement in principle. In addition, on November 6, 2023, GIS and the Company entered into an agreement (&#x201c;Settlement Agreement&#x201d;) with Zurich pursuant to which Zurich released GIS and the Company from all of their obligations under the Performance Bonds and the associated general indemnity agreements relating to the Performance Bonds, and we agreed to release possession of the MPSVs to Zurich, which occurred in the fourth quarter 2023. Further, we entered into the Note Agreement. See Note 4 for further discussion of the Note Agreement.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;As a result of the resolution of the MPSV Litigation, during the third quarter 2023, we recorded a charge of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, consisting of (i) a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;12.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million non-cash charge associated with the write-off of a noncurrent net contract asset related to the MPSV construction contracts, and (ii) a $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;20.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million charge associated with recording a liability resulting from the Settlement Agreement and Note Agreement. The charge was reflected as a reduction to previously recognized revenue on the MPSV construction contracts, resulting in a negative revenue amount for the Shipyard Division for 2023, and is included in the changes in noncurrent assets and liabilities, net on our Statement of Cash Flows. The liability was replaced with the Note Agreement in the fourth quarter 2023 and is reflected as current and long-term debt on our Balance Sheet at December 31, 2023.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Insurance&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We maintain insurance coverage for various aspects of our business and operations. However, we may be exposed to future losses due to coverage limitations and our use of deductibles and self-insured retentions for our exposures related to property and equipment damage, builder&#x2019;s risk, third-party liability and workers&#x2019; compensation and USL&amp;amp;H claims. In connection with our insurance coverage renewal for our property and equipment during 2023, we determined that the benefits of maintaining insurance coverage for our property and equipment were limited due to high premium costs and deductibles and increased coverage limitations. Accordingly, we did not renew all of our property and equipment coverage and are now generally self-insured for exposures resulting from any future damage to our property and equipment.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; To the extent we have insurance coverage, we do not have an offset right for liabilities in excess of any deductibles and self-insured retentions. Accordingly, we have recorded a liability for estimated amounts in excess of our deductibles and retentions, and have recorded a corresponding asset related to estimated insurance recoveries, on our Balance Sheet. Further, to the extent we are self-insured, reserves are recorded based upon our estimates, with input from legal and insurance advisors. Changes in assumptions, as well as changes in actual experience, could cause these estimates to change. See Note 2 for discussion of the costs incurred associated with damage caused by Hurricanes Ida.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Letters of Credit and Surety Bonds&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We obtain letters of credit under our LC Facility or surety bonds from financial institutions to provide to our customers in order to secure advance payments or guarantee performance under our contracts, or in lieu of retention being withheld on our contracts. Letters of credit under our LC Facility are subject to cash securitization of the full amount of the outstanding letters of credit. In the event of non-performance under a contract, our cash securitization with respect to the letter of credit supporting such contract would become the property of Whitney Bank. With respect to surety bonds, payments by a Surety pursuant to a bond in the event of non-performance are subject to reimbursement to such Surety by us under a general indemnity agreement relating to such bond. Such indemnification obligations may include the face amount of the surety bond, or portions thereof, as well as other reimbursable items such as interest and certain investigative expenses and legal fees of the Surety. Such indemnification obligations would require us to use our cash, cash equivalents or short-term investments, and we may not have sufficient liquidity to satisfy such indemnification obligations. When a contract is complete, the contingent obligation terminates, and letters of credit or surety bonds are returned. See Note 4 for further discussion of our LC Facility and surety bonds.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Environmental Matters&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Our operations are subject to extensive and changing U.S. federal, state and local laws and regulations, as well as the laws of other countries, that establish health and environmental quality standards. These standards, among others, relate to air and water pollutants and the management and disposal of hazardous substances and wastes. We are exposed to potential liability for personal injury or property damage caused by any release, spill, exposure or other accident involving such pollutants, substances or wastes. In connection with the historical operation of our facilities, including those associated with acquired operations, substances which currently are or might be considered hazardous were used or disposed of at some sites that will or may require us to make expenditures for remediation. We believe we are in compliance, in all material respects, with environmental laws and regulations and maintain insurance coverage to mitigate exposure to environmental liabilities. We do not believe any environmental matters will have a material adverse effect on our financial condition, results of operations or cash flow.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Leases&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We maintain operating leases for our corporate office and certain operating facilities and equipment. See Note 3 for further discussion of our leases.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <gifi:ConstructionInProgressNumberOfMultiPurposeServiceVessels
      contextRef="C_f12de176-6bb7-44c6-a364-76db7bf9d4c3"
      decimals="INF"
      id="F_5570b9bc-6c28-4315-b45d-459a8f41cb7f"
      unitRef="U_Vessel">2</gifi:ConstructionInProgressNumberOfMultiPurposeServiceVessels>
    <gifi:LossContingencyUnderPerformanceBondsIssued
      contextRef="C_e3032ac6-3a56-44cc-a93b-8a3f692d0f6b"
      decimals="-5"
      id="F_7ac97e77-4535-4fc7-878e-fde794eddf55"
      unitRef="U_USD">50000000</gifi:LossContingencyUnderPerformanceBondsIssued>
    <us-gaap:LitigationSettlementExpense
      contextRef="C_4714cb78-99d0-481d-9df4-1009ce2cfc6c"
      decimals="-5"
      id="F_e4b4ba8d-e5d0-4633-859f-d5b36bcf0525"
      unitRef="U_USD">32500000</us-gaap:LitigationSettlementExpense>
    <gifi:NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset
      contextRef="C_4714cb78-99d0-481d-9df4-1009ce2cfc6c"
      decimals="-5"
      id="F_cdcb95d9-f9f4-43ef-844f-a3ea3ada50d8"
      unitRef="U_USD">12500000</gifi:NonCashLitigationExpenseAssociatedWithWriteOffOfNetContractAsset>
    <gifi:LitigationExpenseAssociatedWithRecordingLiability
      contextRef="C_4714cb78-99d0-481d-9df4-1009ce2cfc6c"
      decimals="-5"
      id="F_9319a5eb-3a2f-4336-b392-3e786d2dde71"
      unitRef="U_USD">20000000</gifi:LitigationExpenseAssociatedWithRecordingLiability>
    <gifi:IncomeLossPerShareAndShareholdersEquityTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_05a3bbc5-e5f8-409c-937c-2bc0c8fffd06">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;8. INCOME (LOSS) PER SHARE AND SHAREHOLDERS&#x2019; EQUITY&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Income (Loss) Per Share&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table presents the computation of basic and diluted loss per share for 2023 and 2022 (in thousands, except per share data):&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:47.57%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:22.256%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:22.256%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Net loss&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;24,402&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,352&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Weighted average shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;16,193&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;15,840&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Basic and diluted loss per share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.51&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.21&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Shareholders&#x2019; Equity&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;On December 1, 2023, our Board approved a share repurchase program (&#x201c;Share Repurchase Program&#x201d;) authorizing the repurchase of up to $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million of our outstanding common stock, effective from December 15, 2023 through &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;December 15, 2024&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;. The timing and amount of any share repurchases is at the discretion of management and may be made from time to time through transactions in the open market, in privately negotiated transactions or by other means in accordance with applicable laws. The Share Repurchase Program does not obligate us to repurchase any shares of common stock and may be modified, increased, suspended or terminated at the discretion of our Board. During 2023, we repurchased &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;29,578&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; shares of our common stock for $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, and at December 31, 2023, we had remaining authorization to purchase $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million under the Share Repurchase Program.&lt;/span&gt;&lt;/p&gt;</gifi:IncomeLossPerShareAndShareholdersEquityTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_2a5c2db9-6196-4998-bd25-eacaa7d5258e">&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;The following table presents the computation of basic and diluted loss per share for 2023 and 2022 (in thousands, except per share data):&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:47.57%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:22.256%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.96%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:22.256%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Net loss&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;24,402&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,352&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Weighted average shares&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;16,193&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;15,840&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Basic and diluted loss per share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.51&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.21&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_8a714d3c-cb49-4f6f-bab1-bb9687738ac9"
      unitRef="U_USD">-24402000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_ac816ec0-b066-496b-b3bf-5d847d731ed6"
      unitRef="U_USD">-3352000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_956cfa89-77c0-431a-af87-e9c41a8d7472"
      unitRef="U_shares">16193000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="-3"
      id="F_94970c5b-61b8-432f-be19-a7b166d50558"
      unitRef="U_shares">16193000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_9c17cf55-5371-487b-9846-30a8cf103cb8"
      unitRef="U_shares">15840000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="-3"
      id="F_5ba9ee09-e610-48e8-89af-ec684c2f1a02"
      unitRef="U_shares">15840000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="2"
      id="F_23072614-f66d-46cc-9042-96a85b6c1eac"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">-1.51</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="2"
      id="F_a55b3341-847f-486b-b7dd-c76c5c064ddd"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">-1.51</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="2"
      id="F_c9116dc3-63df-462e-8bdc-656701787090"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">-0.21</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_7dbf5975-3f1d-4b4d-a728-1fc3f9e81803"
      decimals="2"
      id="F_16318011-7ca7-4172-8a66-71ce6c114411"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">-0.21</us-gaap:EarningsPerShareDiluted>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="C_7155407d-bf96-4947-8a98-ad5509236125"
      decimals="INF"
      id="F_3e349065-c12c-49a3-a232-f5d660ae8386"
      unitRef="U_USD">5000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchaseProgramExpirationDate
      contextRef="C_23da1c7a-3b6b-4c6c-866f-72f37f68421d"
      id="F_84e6de9e-cba3-49ec-aebc-f323249d5c29">2024-12-15</us-gaap:StockRepurchaseProgramExpirationDate>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_1bf7fc59-2a44-4d64-8947-7abe38b1173b"
      decimals="INF"
      id="F_4cd315b2-307b-4551-bd23-32de35c98090"
      unitRef="U_shares">29578</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="C_1bf7fc59-2a44-4d64-8947-7abe38b1173b"
      decimals="-5"
      id="F_4445bb47-aca0-49f4-b10d-7b96bd666cb3"
      unitRef="U_USD">100000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="C_6d7d296e-8308-421e-b161-9b8751b36e38"
      decimals="-5"
      id="F_8d811bde-44a8-4934-a2f6-b47aa682bd2b"
      unitRef="U_USD">4900000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_392a83a3-d9fc-4fb4-be31-02e104e09f8e">&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;9. OPERATING SEGMENTS&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;We currently operate and manage our business through &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;three&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; operating divisions (&#x201c;Services&#x201d;, &#x201c;Fabrication&#x201d; and &#x201c;Shipyard&#x201d;) and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;one&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; non-operating division (&#x201c;Corporate&#x201d;), which represent our reportable segments. Our three operating divisions and Corporate Division are discussed below.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Services Division&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Our Services Division provides maintenance, repair, construction, scaffolding, coatings, welding enclosures and other specialty services on offshore platforms and inland structures and at industrial facilities; provides services required to connect production equipment and service modules and equipment on offshore platforms; provides project management and commissioning services; provides industrial staffing services; and performs municipal and drainage projects, including pump stations, levee reinforcement, bulkheads and other public works. Our services activities are managed from our various Facilities.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Fabrication Division&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &#x2013; Our Fabrication Division fabricates modules, skids and piping systems for onshore refining, petrochemical, LNG and industrial facilities and offshore facilities; fabricates foundations, secondary steel components and support structures for alternative energy developments and coastal mooring facilities; fabricates offshore production platforms and associated structures, including jacket foundations, piles and topsides for fixed production and utility platforms, as well as hulls and topsides for floating production and utility platforms; and fabricates other complex steel structures and components. Our fabrication activities are performed at our Houma Facilities.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Shipyard Division &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; Our Shipyard Division previously fabricated newbuild marine vessels and provided marine repair and maintenance services. However, in the second quarter 2021, we completed the Shipyard Transaction. The Shipyard Transaction excluded the contracts and related obligations for our Ferry Projects that were under construction as of the transaction date, and excluded the contracts and related obligations for the projects that were subject to our MPSV Litigation, which was resolved on October 4, 2023. Construction of the Ferry Projects was performed at our Houma Facilities and the wind down of our remaining Shipyard Division operations was substantially completed in the fourth quarter 2023. Final completion of the wind down will occur upon completion of the warranty periods for the Ferry Projects, the last of which is anticipated to occur in the first quarter 2025. At December 31, 2023 and 2022, the net operating liabilities on our Balance Sheet associated with our Shipyard Division operations totaled $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1.4&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million, respectively. See Note 1 for further discussion of the Shipyard Transaction, Note 2 for further discussion of our Ferry Projects and Note 7 for further discussion of the resolution of our MPSV Litigation.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Corporate Division and Allocations&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Our Corporate Division includes costs that do not directly relate to our operating divisions. Such costs include, but are not limited to, costs of maintaining our corporate office, executive management salaries and incentives, board of directors&#x2019; fees, certain insurance costs and costs associated with overall corporate governance and reporting requirements for a publicly traded company. Shared resources and costs that benefit more than one operating division are allocated amongst the operating divisions based on each operating division&#x2019;s estimated share of the benefit received. Such costs include, but are not limited to, human resources, insurance, information technology, accounting, business development and certain division leadership.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt;Segment Results&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#x2013; We generally evaluate the performance of, and allocate resources to, our divisions based upon gross profit or loss and operating income or loss. Segment assets are comprised of all assets attributable to each division. Intersegment revenues are priced at the estimated fair value of work performed. &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Summarized financial information for our segments as of and for the two-year period ended December 31, 2023, is as follows (in thousands):&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:9pt;font-family:Times New Roman;"&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:37.763%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Year Ended December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Corporate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Revenue (eliminations) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;93,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;89,046&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,110&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;151,067&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Gross profit (loss) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;13,783&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10,178&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;35,862&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;11,901&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Operating income (loss) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10,558&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;39,374&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;25,883&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,926&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,249&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,466&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Capital expenditures&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;544&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,233&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;99&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total assets &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(3)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32,191&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;42,368&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,553&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;52,316&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;128,428&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:37.763%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Year Ended December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Corporate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Revenue (eliminations)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;87,022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;48,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;142,320&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Gross profit (loss) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;11,227&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;274&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,058&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,895&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Operating income (loss) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8,124&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,874&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,554&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8,859&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,415&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,496&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,343&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;259&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,098&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Capital expenditures&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,326&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;633&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;127&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,086&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total assets &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(3)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;28,016&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;40,531&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;16,330&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;49,989&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;134,866&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue for 2023 includes a charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million resulting from the resolution of our MPSV Litigation for our Shipyard Division. Gross profit (loss) and operating income (loss) for 2023 includes a charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million resulting from the resolution of our MPSV Litigation and project charges of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for our Shipyard Division. Operating income (loss) for 2023 also includes gains &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million associated with damage previously caused by Hurricane Ida for our Shipyard Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 7 for further discussion of the resolution of our MPSV Litigation.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross profit (loss) and operating income (loss) for 2022 includes project charges of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for our Shipyard Division. Operating income (loss) for 2022 also includes gains of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million associated with damage previously caused by Hurricane Ida for our Shipyard Division, an impairment charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million associated with the underlying right-of-use asset for our corporate office lease for our Corporate Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 3 for further discussion of our corporate office lease asset impairment.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(3)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and short-term investments are reported within our Corporate Division. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="INF"
      id="F_a22bc87a-780d-442c-a49f-a45b946ad5e4"
      unitRef="U_Segment">3</us-gaap:NumberOfOperatingSegments>
    <gifi:NumberOfCorporateNonOperatingSegments
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      decimals="INF"
      id="F_71de5472-4409-40ec-966d-adb3085df639"
      unitRef="U_Segment">1</gifi:NumberOfCorporateNonOperatingSegments>
    <us-gaap:OperatingLeaseLiability
      contextRef="C_b19e0574-d5db-429e-b9ea-18e4968c8435"
      decimals="-5"
      id="F_638850c1-f6ae-423d-ba15-cbd34b9f51e5"
      unitRef="U_USD">1400000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="C_bc4a4886-4017-4268-826f-76e476050225"
      decimals="-5"
      id="F_94633078-ed55-4ff0-bfa3-c30384b50011"
      unitRef="U_USD">2700000</us-gaap:OperatingLeaseLiability>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_183cd94c-5c9c-4e47-9de9-09a5583d764e">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;Summarized financial information for our segments as of and for the two-year period ended December 31, 2023, is as follows (in thousands):&lt;/span&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:37.763%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Year Ended December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Corporate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Revenue (eliminations) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;93,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;89,046&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;30,417&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,110&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;151,067&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Gross profit (loss) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;13,783&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10,178&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;35,862&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;11,901&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Operating income (loss) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(1)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;10,558&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;39,374&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;25,883&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,926&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,249&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,466&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Capital expenditures&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;544&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,233&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;99&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total assets &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(3)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32,191&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;42,368&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,553&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;52,316&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;128,428&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
      &lt;table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:90.0%;border-collapse:separate;margin-right:auto;"&gt;
       &lt;tr style="visibility:collapse;"&gt;
        &lt;td style="width:37.763%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:1.541%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
        &lt;td style="width:8.907%;"&gt;&lt;/td&gt;
        &lt;td style="width:1%;"&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Year Ended December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Services&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Fabrication&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Shipyard&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Corporate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Revenue (eliminations)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;87,022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;48,299&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,671&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;672&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;142,320&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Gross profit (loss) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;11,227&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;274&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,058&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,895&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Operating income (loss) &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(2)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8,124&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;4,874&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7,554&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8,859&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,415&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;1,496&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,343&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;259&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;5,098&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#cff0fc;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Capital expenditures&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2,326&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;633&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;127&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;3,086&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
       &lt;tr style="height:9pt;background-color:#ffffff;word-break:break-word;"&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:top;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;Total assets &lt;/span&gt;&lt;span style="color:#000000;top:-4.221pt;white-space:pre-wrap;font-size:6.03pt;position:relative;min-width:fit-content;"&gt;(3)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;28,016&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;40,531&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;16,330&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;49,989&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="font-size:9pt;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;134,866&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
        &lt;td style="white-space:nowrap;vertical-align:bottom;"&gt;&lt;p style="font-size:9pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
       &lt;/tr&gt;
      &lt;/table&gt;&lt;p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.5pt solid;margin-right:91.852%;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(1)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Revenue for 2023 includes a charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million resulting from the resolution of our MPSV Litigation for our Shipyard Division. Gross profit (loss) and operating income (loss) for 2023 includes a charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;32.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million resulting from the resolution of our MPSV Litigation and project charges of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.7&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for our Shipyard Division. Operating income (loss) for 2023 also includes gains &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million associated with damage previously caused by Hurricane Ida for our Shipyard Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 7 for further discussion of the resolution of our MPSV Litigation.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(2)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Gross profit (loss) and operating income (loss) for 2022 includes project charges of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million for our Shipyard Division. Operating income (loss) for 2022 also includes gains of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;7.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million from the net impact of insurance recoveries and costs associated with damage previously caused by Hurricane Ida for our Fabrication Division, charges of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million associated with damage previously caused by Hurricane Ida for our Shipyard Division, an impairment charge of $&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;0.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt; million associated with the underlying right-of-use asset for our corporate office lease for our Corporate Division, and the partial under-recovery of overhead costs for our Fabrication Division. See Note 2 for further discussion of our project and Hurricane Ida impacts and Note 3 for further discussion of our corporate office lease asset impairment.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-left:4.13%;display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:3.333%;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:3.4765828726400336%;display:inline-flex;justify-content:flex-start;"&gt;(3)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"&gt;Cash and short-term investments are reported within our Corporate Division. &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601"
      decimals="-3"
      id="F_c35c7f26-3c93-48b5-adc1-0398c7ae28c3"
      unitRef="U_USD">93548000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e"
      decimals="-3"
      id="F_d3a9b9c4-aad8-4bb6-844d-a3ffe54c2692"
      unitRef="U_USD">89046000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_fadbd496-c1ef-4862-b033-2b9e2de8ef5e"
      decimals="-3"
      id="F_d3896dc3-ee58-4eba-8a81-5821a32f3d0e"
      unitRef="U_USD">30417000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_f245e131-80fc-4498-83e5-e1095706280b"
      decimals="-3"
      id="F_ab6fe88d-1df9-4550-90cb-7e30ecb12ee0"
      unitRef="U_USD">-1110000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_77250883-71d3-4197-8132-505f6c3763fc"
      decimals="-3"
      id="F_ed18acee-629d-4f52-bc57-5fb8735d62f2"
      unitRef="U_USD">151067000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601"
      decimals="-3"
      id="F_fc471788-0188-46e0-a16e-3f8dd72fb64b"
      unitRef="U_USD">13783000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e"
      decimals="-3"
      id="F_1e06934f-631c-4fe4-976f-73f0a98c6717"
      unitRef="U_USD">10178000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="C_fadbd496-c1ef-4862-b033-2b9e2de8ef5e"
      decimals="-3"
      id="F_8a77031b-4fa1-4c4d-9193-9a50ff0562c9"
      unitRef="U_USD">-35862000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="C_77250883-71d3-4197-8132-505f6c3763fc"
      decimals="-3"
      id="F_030fb041-ea20-4bc0-b9c1-62d2a31d79b5"
      unitRef="U_USD">-11901000</us-gaap:GrossProfit>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601"
      decimals="-3"
      id="F_092cc9be-113b-4c55-9bb7-6930b1d4e54f"
      unitRef="U_USD">10929000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e"
      decimals="-3"
      id="F_260fbcb7-882b-4bed-9c17-f8b2e4757950"
      unitRef="U_USD">10558000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_fadbd496-c1ef-4862-b033-2b9e2de8ef5e"
      decimals="-3"
      id="F_daa5b472-b5fd-4773-a605-376e8128ffa6"
      unitRef="U_USD">-39374000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_f245e131-80fc-4498-83e5-e1095706280b"
      decimals="-3"
      id="F_6eaecd38-737c-420c-b11e-cb3c87a3013d"
      unitRef="U_USD">-7996000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_77250883-71d3-4197-8132-505f6c3763fc"
      decimals="-3"
      id="F_7636644b-9d06-4075-a6b4-e55250e12f89"
      unitRef="U_USD">-25883000</us-gaap:OperatingIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601"
      decimals="-3"
      id="F_42dc0f98-20e8-4970-9ff9-7707adda19e3"
      unitRef="U_USD">1926000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e"
      decimals="-3"
      id="F_c3ede233-4658-44b8-b538-1f4115ee9bf2"
      unitRef="U_USD">3249000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_f245e131-80fc-4498-83e5-e1095706280b"
      decimals="-3"
      id="F_8e96201b-0c2b-4e03-9b0a-63e988c8187a"
      unitRef="U_USD">291000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_77250883-71d3-4197-8132-505f6c3763fc"
      decimals="-3"
      id="F_35d282bd-c24a-4f7b-b2ec-6841acfe5972"
      unitRef="U_USD">5466000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets
      contextRef="C_ebfe2964-144b-4a54-910b-ad1585bd7601"
      decimals="-3"
      id="F_8bee0d0d-8914-4eb9-970e-d990eb88145a"
      unitRef="U_USD">544000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets
      contextRef="C_7017de45-5833-4aed-b28c-0955d461c35e"
      decimals="-3"
      id="F_a71864fe-0856-445b-8c54-fac5fd7c065b"
      unitRef="U_USD">2233000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets
      contextRef="C_f245e131-80fc-4498-83e5-e1095706280b"
      decimals="-3"
      id="F_75b5603f-8392-4f05-89ea-500e5d603eb2"
      unitRef="U_USD">99000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets
      contextRef="C_77250883-71d3-4197-8132-505f6c3763fc"
      decimals="-3"
      id="F_c070f8fe-6a23-470d-9267-b3cff9f56ce4"
      unitRef="U_USD">2876000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:Assets
      contextRef="C_266672af-617b-4fb8-b279-4e187afadc2d"
      decimals="-3"
      id="F_55785b33-0f43-42d5-87e2-732de90686e3"
      unitRef="U_USD">32191000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_20faa71f-e80d-4bd6-a545-8479d7c110df"
      decimals="-3"
      id="F_4e284d10-dcea-4662-be5b-b3693aaab286"
      unitRef="U_USD">42368000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_cd145452-ba68-4832-bbab-f2d69bbb37bc"
      decimals="-3"
      id="F_313979de-eae4-4e75-8129-135fc9199de7"
      unitRef="U_USD">1553000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_3adcfaea-44fb-4459-a024-78c164bc3a40"
      decimals="-3"
      id="F_c9d24f24-2097-4da8-8233-62f856e4d9f5"
      unitRef="U_USD">52316000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_fa83d1c1-fd21-47b5-a1f9-3650ae12e262"
      decimals="-3"
      id="F_cc69b3f5-f236-4959-88e3-423c818fe52a"
      unitRef="U_USD">128428000</us-gaap:Assets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82"
      decimals="-3"
      id="F_13a97ffc-c302-4f7f-b90e-5b5a9e38efd8"
      unitRef="U_USD">87022000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6"
      decimals="-3"
      id="F_23af235f-7757-4058-98a1-121ba86e9956"
      unitRef="U_USD">48299000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_5c874480-56e2-4952-8695-f5343665429c"
      decimals="-3"
      id="F_78fa7df4-6d2b-4bb2-ad94-3aa311c520a7"
      unitRef="U_USD">7671000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_a3970fc1-85e8-40bd-8408-517bae191be3"
      decimals="-3"
      id="F_f302af83-5f3a-4f1a-82f2-9406533913b6"
      unitRef="U_USD">-672000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f"
      decimals="-3"
      id="F_eb713059-8839-4463-abb8-281363e89195"
      unitRef="U_USD">142320000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82"
      decimals="-3"
      id="F_f98d48f2-5e0f-45b5-91b4-3bd9181612ce"
      unitRef="U_USD">11227000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6"
      decimals="-3"
      id="F_9d93019d-48ed-41a8-9a81-f5a73b51f6ac"
      unitRef="U_USD">-274000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="C_5c874480-56e2-4952-8695-f5343665429c"
      decimals="-3"
      id="F_9bef8b2f-4f4a-48df-b05e-29d12d9bdb8f"
      unitRef="U_USD">-3058000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f"
      decimals="-3"
      id="F_294d6762-572e-4ffe-b603-4177e2aa8fe9"
      unitRef="U_USD">7895000</us-gaap:GrossProfit>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82"
      decimals="-3"
      id="F_4b0870a8-02a8-4c4a-97d8-20320b3f6f38"
      unitRef="U_USD">8124000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6"
      decimals="-3"
      id="F_37615682-b3e3-4841-abff-879c46c7bb82"
      unitRef="U_USD">4874000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_5c874480-56e2-4952-8695-f5343665429c"
      decimals="-3"
      id="F_4684c12b-e03f-40cc-9a45-6df9669bba47"
      unitRef="U_USD">-7554000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_a3970fc1-85e8-40bd-8408-517bae191be3"
      decimals="-3"
      id="F_a33ae7ae-04f4-49a1-b0d2-929ade873157"
      unitRef="U_USD">-8859000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f"
      decimals="-3"
      id="F_4abf58a6-0244-4ac6-851c-6d6e9cc175ce"
      unitRef="U_USD">-3415000</us-gaap:OperatingIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82"
      decimals="-3"
      id="F_eedd476a-bd21-4eee-a1db-f797ba13db0c"
      unitRef="U_USD">1496000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6"
      decimals="-3"
      id="F_d3eaff2a-1fbe-4334-83fa-3cd43d47a673"
      unitRef="U_USD">3343000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_a3970fc1-85e8-40bd-8408-517bae191be3"
      decimals="-3"
      id="F_a87f601d-5c1a-4d31-b612-0723eba27e12"
      unitRef="U_USD">259000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f"
      decimals="-3"
      id="F_cd522fe4-be09-4271-b1f8-97ef922b6006"
      unitRef="U_USD">5098000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets
      contextRef="C_f3e4c2e8-a859-4bc9-ae9d-9ffbe5a5eb82"
      decimals="-3"
      id="F_c52c70f5-090f-4c96-a3a5-90014db0f646"
      unitRef="U_USD">2326000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets
      contextRef="C_0a349ea0-6c23-43e7-938c-d5d667e097f6"
      decimals="-3"
      id="F_2a6326a8-c71f-4693-9dae-ab34cea3e769"
      unitRef="U_USD">633000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets
      contextRef="C_a3970fc1-85e8-40bd-8408-517bae191be3"
      decimals="-3"
      id="F_55407551-33aa-4649-a0ca-fd02a70eaa6b"
      unitRef="U_USD">127000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets
      contextRef="C_05b19536-9bbd-4687-9739-a0cd2fc8009f"
      decimals="-3"
      id="F_d09b6525-3e98-4c53-88db-d06e8e0e2544"
      unitRef="U_USD">3086000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:Assets
      contextRef="C_6303eb31-5b83-4da7-b2c0-7ec761e5f7e3"
      decimals="-3"
      id="F_ec7ed5eb-42d3-4502-88d6-24e3f91f8ec8"
      unitRef="U_USD">28016000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_50aab56e-5238-43b1-99ef-89b0d0552b93"
      decimals="-3"
      id="F_26acad6b-4ce8-4a8c-b937-fc342ecec73a"
      unitRef="U_USD">40531000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_15ad06f3-cc87-490d-a652-cbef34e96aef"
      decimals="-3"
      id="F_cdf66168-e9c6-4638-a4a1-82317f7fcbca"
      unitRef="U_USD">16330000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_cc1e7336-22c9-4f9e-bfaf-e935d603a08c"
      decimals="-3"
      id="F_aa696b5f-33bf-44d2-b883-1cad155a2da4"
      unitRef="U_USD">49989000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_a175debd-0104-4012-a2ab-07601609eb1d"
      decimals="-3"
      id="F_e5695e73-e28d-4e47-bd40-9b114f593880"
      unitRef="U_USD">134866000</us-gaap:Assets>
    <us-gaap:LitigationSettlementExpense
      contextRef="C_9ebe2456-cc9f-43ae-bd16-513522a50e1e"
      decimals="-5"
      id="F_62b98a27-2232-4c39-9c01-8fab02866df2"
      unitRef="U_USD">32500000</us-gaap:LitigationSettlementExpense>
    <us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
      contextRef="C_a08c5954-8f97-4eb0-9131-7678a3ae6fdc"
      decimals="-5"
      id="F_ed7833f1-b5a3-4706-bf37-1f78c5d076ae"
      unitRef="U_USD">32500000</us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice>
    <us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
      contextRef="C_794803ce-d97e-4446-ba7a-1a2fd69d3f78"
      decimals="-5"
      id="F_dc345a0b-f785-427f-b208-a92cd14e11ab"
      unitRef="U_USD">-2700000</us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice>
    <us-gaap:InsuredEventGainLoss
      contextRef="C_1d622621-1bd2-4b9d-9484-fbd8d9ee8de1"
      decimals="-5"
      id="F_1c593023-5d25-428d-9ca2-e28e1ef3c3a7"
      unitRef="U_USD">2000000</us-gaap:InsuredEventGainLoss>
    <gifi:ChargesAssociatedWithDamageCausedByHurricane
      contextRef="C_794803ce-d97e-4446-ba7a-1a2fd69d3f78"
      decimals="-5"
      id="F_7f88211f-dabb-4500-8118-e2f87baee218"
      unitRef="U_USD">500000</gifi:ChargesAssociatedWithDamageCausedByHurricane>
    <us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
      contextRef="C_91e23f16-98d0-4e7b-8b3b-2b15f08dcf1d"
      decimals="-5"
      id="F_eb230eb7-6405-4340-bafd-513d76b0e4db"
      unitRef="U_USD">-2000000</us-gaap:ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice>
    <us-gaap:InsuredEventGainLoss
      contextRef="C_c53b35c5-eb37-49cf-acb6-48c5c967a1d0"
      decimals="-5"
      id="F_aa2ca03b-7be4-465b-964c-f1da18aabf73"
      unitRef="U_USD">7500000</us-gaap:InsuredEventGainLoss>
    <gifi:ChargesAssociatedWithDamageCausedByHurricane
      contextRef="C_91e23f16-98d0-4e7b-8b3b-2b15f08dcf1d"
      decimals="-5"
      id="F_41ed35dd-ec52-47cb-a483-65feb731333b"
      unitRef="U_USD">200000</gifi:ChargesAssociatedWithDamageCausedByHurricane>
    <us-gaap:AssetImpairmentCharges
      contextRef="C_a0e7c22d-1634-4f42-8ab2-cdbce86f2df7"
      decimals="-5"
      id="F_51a4ece0-0843-4400-b3d3-d35d267603d1"
      unitRef="U_USD">500000</us-gaap:AssetImpairmentCharges>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="C_cae205c4-092f-40ce-becd-df88720df331"
      id="F_cbb53180-1a06-47c2-9593-e7b79c0be771">&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;10. SUBSEQUENT EVENTS&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:4.133%;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt;In February 2024, we sold our Houma AHFS for&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;"&gt;8.5&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"&gt; million (net of transaction and other costs). See Note 3 for further discussion of our Houma AHFS.&lt;/span&gt;&lt;/p&gt;</us-gaap:SubsequentEventsTextBlock>
    <gifi:ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts
      contextRef="C_01ac159e-3c97-46af-b432-8dbdc656cd94"
      decimals="-5"
      id="F_7d98347b-73db-4778-910a-372f672f4059"
      unitRef="U_USD">8500000</gifi:ProceedsFromSaleOfAssetsHeldForSaleNetOfTransactionAndOtherCosts>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#F_bbcb29e5-94dc-47ce-a791-0c5a85df09fc"
          xlink:label="F_bbcb29e5-94dc-47ce-a791-0c5a85df09fc"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_1a3ae99b-6348-471b-8e5d-9a8993836a40"
          xlink:label="F_1a3ae99b-6348-471b-8e5d-9a8993836a40"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_30ae313a-b545-4a08-b624-dc0dfd7d2e58"
          xlink:label="F_30ae313a-b545-4a08-b624-dc0dfd7d2e58"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_800049b5-e41c-4fe2-8cbd-99e1d37df20f"
          xlink:label="F_800049b5-e41c-4fe2-8cbd-99e1d37df20f"
          xlink:type="locator"/>
        <link:footnote id="FNT_c4a01197-3199-4646-9caa-71eb04f9ecc2" xlink:label="FNT_c4a01197-3199-4646-9caa-71eb04f9ecc2" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">We expect all of our performance obligations at December 31, 2023, to be recognized as revenue during 2024. </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">C</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">ertain factors and circumstances could result in changes in the timing of recognition of our performance obligations as revenue and the amounts ultimately recognized.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_bbcb29e5-94dc-47ce-a791-0c5a85df09fc"
          xlink:to="FNT_c4a01197-3199-4646-9caa-71eb04f9ecc2"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_1a3ae99b-6348-471b-8e5d-9a8993836a40"
          xlink:to="FNT_c4a01197-3199-4646-9caa-71eb04f9ecc2"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_30ae313a-b545-4a08-b624-dc0dfd7d2e58"
          xlink:to="FNT_c4a01197-3199-4646-9caa-71eb04f9ecc2"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_800049b5-e41c-4fe2-8cbd-99e1d37df20f"
          xlink:to="FNT_c4a01197-3199-4646-9caa-71eb04f9ecc2"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_6c557e22-e38b-4cbb-ad0b-2c4c7ad33835"
          xlink:label="F_6c557e22-e38b-4cbb-ad0b-2c4c7ad33835"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_939cf3a2-6c65-413e-8a78-797b4020c621"
          xlink:label="F_939cf3a2-6c65-413e-8a78-797b4020c621"
          xlink:type="locator"/>
        <link:footnote id="FNT_e8374915-ba70-493e-91c8-eb97ee832099" xlink:label="FNT_e8374915-ba70-493e-91c8-eb97ee832099" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract assets from December 31, 2022 to December 31, 2023, was primarily due to decreased unbilled positions on our forty-vehicle ferry projects for our Shipyard Division.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_6c557e22-e38b-4cbb-ad0b-2c4c7ad33835"
          xlink:to="FNT_e8374915-ba70-493e-91c8-eb97ee832099"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_939cf3a2-6c65-413e-8a78-797b4020c621"
          xlink:to="FNT_e8374915-ba70-493e-91c8-eb97ee832099"
          xlink:type="arc"/>
        <link:footnote id="FNT_18168d38-3547-41e1-b53d-3da59ac3541d" xlink:label="FNT_18168d38-3547-41e1-b53d-3da59ac3541d" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract assets at December 31, 2023 and 2022, excluded $</xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.0</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.6</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, associated with revenue recognized in excess of amounts billed for which we have an unconditional right to the consideration. Such amounts are reflected within contract receivables. The increase from December 31, 2022 to December 31, 2023, was primarily due to a customer for our Services Division.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_6c557e22-e38b-4cbb-ad0b-2c4c7ad33835"
          xlink:to="FNT_18168d38-3547-41e1-b53d-3da59ac3541d"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_939cf3a2-6c65-413e-8a78-797b4020c621"
          xlink:to="FNT_18168d38-3547-41e1-b53d-3da59ac3541d"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a"
          xlink:label="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"
          xlink:label="F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"
          xlink:type="locator"/>
        <link:footnote id="FNT_09cb6c4d-b5f1-4b7c-93a5-347cbaa6f4af" xlink:label="FNT_09cb6c4d-b5f1-4b7c-93a5-347cbaa6f4af" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">The decrease in contract liabilities from December 31, 2022 to December 31, 2023, was primarily due to a decrease in advance billings on our cancelled offshore jackets project for our Fabrication Division and accrued contract losses for our Shipyard Division, offset partially by an increase in advance billings on various other projects for our Fabrication Division.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a"
          xlink:to="FNT_09cb6c4d-b5f1-4b7c-93a5-347cbaa6f4af"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"
          xlink:to="FNT_09cb6c4d-b5f1-4b7c-93a5-347cbaa6f4af"
          xlink:type="arc"/>
        <link:footnote id="FNT_10e914ca-b1da-4fb2-ac97-023706bca01e" xlink:label="FNT_10e914ca-b1da-4fb2-ac97-023706bca01e" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Revenue recognized during 2023 and 2022, related to amounts included in our contract liabilities balance at December 31, 2022 and 2021, was $</xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.6</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a"
          xlink:to="FNT_10e914ca-b1da-4fb2-ac97-023706bca01e"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"
          xlink:to="FNT_10e914ca-b1da-4fb2-ac97-023706bca01e"
          xlink:type="arc"/>
        <link:footnote id="FNT_dc1489b8-e89d-4c52-b4b2-784e65fbc1f2" xlink:label="FNT_dc1489b8-e89d-4c52-b4b2-784e65fbc1f2" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">Contract liabilities at December 31, 2023 and 2022, included accrued contract losses of $</xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million and $</xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.6</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, primarily related to projects for our Shipyard Division. See &#x201c;</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Changes in Project Estimates&#x201d;</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below for further discussion of our accrued contract losses. </xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_d2e7aa0d-1631-46d2-b238-b8a2aaa73c8a"
          xlink:to="FNT_dc1489b8-e89d-4c52-b4b2-784e65fbc1f2"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_ddb102dc-23dc-47b0-a0c6-ccaee8c02118"
          xlink:to="FNT_dc1489b8-e89d-4c52-b4b2-784e65fbc1f2"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#F_6eddde0d-af50-4973-9a3e-13f4f119a42e"
          xlink:label="F_6eddde0d-af50-4973-9a3e-13f4f119a42e"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_5672939d-5663-4220-a7fd-741e60520ffa"
          xlink:label="F_5672939d-5663-4220-a7fd-741e60520ffa"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#F_cf0f42d6-c3c3-4cf5-91ea-56be196a9482"
          xlink:label="F_cf0f42d6-c3c3-4cf5-91ea-56be196a9482"
          xlink:type="locator"/>
        <link:footnote id="FNT_32a96312-6aa1-4395-8743-6f986704f2c7" xlink:label="FNT_32a96312-6aa1-4395-8743-6f986704f2c7" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US"><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">For 2023, these customers accounted for </xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;">% or more of our consolidated revenue due to lower revenue for the period associated with a charge of $</xhtml:span><xhtml:span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">32.5</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> million for our Shipyard Division, resulting from the resolution of our MPSV Litigation. See </xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">&#x201c;Changes in Project Estimates&#x201d;</xhtml:span><xhtml:span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;min-width:fit-content;"> below and Note 7 for further discussion of the charge and resolution of our MPSV Litigation.</xhtml:span></link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_6eddde0d-af50-4973-9a3e-13f4f119a42e"
          xlink:to="FNT_32a96312-6aa1-4395-8743-6f986704f2c7"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_5672939d-5663-4220-a7fd-741e60520ffa"
          xlink:to="FNT_32a96312-6aa1-4395-8743-6f986704f2c7"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="F_cf0f42d6-c3c3-4cf5-91ea-56be196a9482"
          xlink:to="FNT_32a96312-6aa1-4395-8743-6f986704f2c7"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
